没有名为wsgi的模块

时间:2015-05-25 08:23:01

标签: python django heroku gunicorn foreman

这就是我Procfile中的内容:

web: gunicorn --pythonpath meraki meraki.wsgi

当我foreman start时,我收到此错误:

gunicorn.errors.HaltServer: <HaltServer 'Worker failed to boot.' 3>

据我所知,在追溯中,原因是:

ImportError: No module named wsgi

我在shell中做了import wsgi,导入成功,没有错误。

为什么我无法启动foreman

项目结构:

meraki
  meraki
      //other apps
      meraki
          settings
          __init__.py
          celery.py
          views.py
          wsgi.py
      manage.py
  Procfile
  requirements
  requirements.txt

2 个答案:

答案 0 :(得分:5)

你通过遵循一个不必要的复杂结构而迷惑自己。您不需要那个外部meraki目录,并且您的Procfile和requirements.txt应该与manage.py位于同一目录中。然后你可以删除pythonpath参数,一切都应该没问题。

答案 1 :(得分:2)

正如罗斯曼所说,这是一个不必要的复杂结构。如果你想这样做,试试

web: gunicorn --pythonpath /path/to/meraki meraki.wsgi

这是/absolutepath/to/secondmeroki(out of 3),其中包含apps