Gunicorn不会绑定我的应用程序

问题描述 投票:9回答:4

我使用默认的localhost创建了一个django Web应用程序,但是我试图在服务器上设置它,以便我可以配置postgre数据库并继续,而不必在以后重做数据库。

我通过数字海洋ubuntu 14液滴托管该网站。当我创建了Droplet时,我选择了它已预先配置为django。它使用nginx和gunicorn来托管网站。

当我第一次创建服务器的实例时,基本的django应用程序被配置为处理给定的IP。它确实如此。

我尝试将我的项目克隆到与该项目相同的目录中,假设它将存在于python路径('/ home / project')上,并将nginx配置为每找到一些文档提供127.0.0.1:8000。

我相信问题在于我试图束缚炮弹。这个输入我得到以下错误。

gunicorn -b 127.0.0.1:8000 GenericRestaurantSystem / wsgi.py:application

ImportError: Failed to find application, did you mean 'program/wsgi:application'?

我不是百分百肯定,但似乎枪炮在这一点上没有提供任何东西(或者甚至没有)。

有关成功绑定此应用程序的任何建议吗?

python django nginx gunicorn
4个回答
25
投票

好吧,这不是你用gunicorn引用WSGI文件的方式。见the docs

模块名称可以是完整的虚线路径。变量名称是指应在指定模块中找到的WSGI可调用对象。

因此,如果您的wsgi.py文件位于GenericRestaurantSystem / wsgi.py中,那么您的命令应该是

gunicorn -b 127.0.0.1:8000 GenericRestaurantSystem.wsgi:application

6
投票

我想它应该是

gunicorn GenericRestaurantSystem.wsgi:application

1
投票

对我来说这个工作就像魅力:)

cd ~/myproject
gunicorn —bind 0.0.0.0:8000 myproject.wsgi:application

1
投票

我有同样的问题,并得到它与此工作:

gunicorn -b 127.0.0.1:8000 wsgi:application

我把wsgi.py文件放在与manage.py相同的级别。

© www.soinside.com 2019 - 2024. All rights reserved.