2013-05-06 76 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」。

相關問題