2013-05-06 82 views
3

我下面Getting Started with Django on Heroku tutorial
当我尝试使用福尔曼在其上运行Gunicorn Django应用程序,我得到一个错误回溯:试图运行Gunicorn Django应用程序在本地使用工头

09:23:33 web.1 | started with pid 7012 
09:23:34 web.1 | 2013-05-06 09:23:34 [7012] [INFO] Starting gunicorn 0.17.2 
09:23:34 web.1 | 2013-05-06 09:23:34 [7012] [INFO] Listening at: `http://0.0.0.0:5000` (7012) 
09:23:34 web.1 | 2013-05-06 09:23:34 [7012] [INFO] Using worker: sync 
09:23:34 web.1 | 2013-05-06 09:23:34 [7015] [INFO] Booting worker with pid: 7015 
09:23:34 web.1 | 2013-05-06 09:23:34 [7015] [ERROR] Exception in worker process: 
09:23:34 web.1 | Traceback (most recent call last): 
09:23:34 web.1 | File "/usr/local/lib/python2.7/site-packages/gunicorn/arbiter.py", line 485, in spawn_worker 
09:23:34 web.1 |  worker.init_process() 
09:23:34 web.1 | File "/usr/local/lib/python2.7/site-packages/gunicorn/workers/base.py", line 100, in init_process 
09:23:34 web.1 |  self.wsgi = self.app.wsgi() 
09:23:34 web.1 | File "/usr/local/lib/python2.7/site-packages/gunicorn/app/base.py", line 103, in wsgi 
09:23:34 web.1 |  self.callable = self.load() 
09:23:34 web.1 | File "/usr/local/lib/python2.7/site-packages/gunicorn/app/wsgiapp.py", line 25, in load 
09:23:34 web.1 |  return util.import_app(self.app_uri) 
09:23:34 web.1 | File "/usr/local/lib/python2.7/site-packages/gunicorn/util.py", line 372, in import_app 
09:23:34 web.1 |  __import__(module) 
09:23:34 web.1 | File "/Users/cosmicMan66/DjangoDev/hepcat_server/hepcat_server/wsgi.py", line 27, in <module> 
09:23:34 web.1 |  from django.core.wsgi import get_wsgi_application 
09:23:34 web.1 | ImportError: No module named django.core.wsgi 
09:23:34 web.1 | Traceback (most recent call last): 
09:23:34 web.1 | File "/usr/local/lib/python2.7/site-packages/gunicorn/arbiter.py", line 485, in spawn_worker 
09:23:34 web.1 |  worker.init_process() 
09:23:34 web.1 | File "/usr/local/lib/python2.7/site-packages/gunicorn/workers/base.py", line 100, in init_process 
09:23:34 web.1 |  self.wsgi = self.app.wsgi() 
09:23:34 web.1 | File "/usr/local/lib/python2.7/site-packages/gunicorn/app/base.py", line 103, in wsgi 
09:23:34 web.1 |  self.callable = self.load() 
09:23:34 web.1 | File "/usr/local/lib/python2.7/site-packages/gunicorn/app/wsgiapp.py", line 25, in load 
09:23:34 web.1 |  return util.import_app(self.app_uri) 
09:23:34 web.1 | File "/usr/local/lib/python2.7/site-packages/gunicorn/util.py", line 372, in import_app 
09:23:34 web.1 |  __import__(module) 
09:23:34 web.1 | File "/Users/cosmicMan66/DjangoDev/hepcat_server/hepcat_server/wsgi.py", line 27, in <module> 
09:23:34 web.1 |  from django.core.wsgi import get_wsgi_application 
09:23:34 web.1 | ImportError: No module named django.core.wsgi 
09:23:34 web.1 | 2013-05-06 09:23:34 [7015] [INFO] Worker exiting (pid: 7015) 
09:23:35 web.1 | 2013-05-06 09:23:35 [7012] [INFO] Shutting down: Master 
09:23:35 web.1 | 2013-05-06 09:23:35 [7012] [INFO] Reason: Worker failed to boot. 
09:23:35 web.1 | exited with code 3 
09:23:35 system | sending SIGTERM to all processes 
SIGTERM received 

Procfile是位于项目的根目录下,并包含:

网站:gunicorn hepcat_server.wsgi

settings.py位于hepcat_server目录

当我使用$ python manage.py run_gunicorn
gunicorn成功启动,我看到Django缺省页

+0

看看[这个要点](https://gist.github.com/johnnylambada/5505071) - 这是我如何让DJANGO教程1和2与Heroku一起工作的完整日志。 – JohnnyLambada 2013-05-08 00:37:45

回答

1

我有同样的问题跟着你使用Heroku的设置页面,同时。我在this page上找到了一个解决方案。我在这里复制了后代:

在django项目的根目录中,创建Procfile文件。 然后把它写在它上面:sh -c“cd djangoproject & & gunicorn djangoproject.wsgi”。然后在同一个 位置创建另一个名为.env的文件,将DJANGO_SETTINGS_MODULE = djangoproject.settings写入它, 这将帮助您设置在djangoproject.wsgi模块中设置的不能为 的必需env变量。运行工头开始测试。 这样做应该是自我解释给出下面的问题。

当您部署,创造了Heroku的应用程序后,设置使用此命令配置的Heroku的 环境变量:设置 DJANGO_SETTINGS_MODULE = djangoproject.settings,这是因为 部署文件djangoproject/djangoproject/WSGI之前失败。运行py 。

记得用您的django项目的名称替换“djangoproject”。

相关问题