2013-03-24 1 views
2

Я запускаю приложение Django, которое я использовал для развертывания в Heroku с Gunicorn без сучка и задоринки. Я имею в виду, что я мог бы запуститьGunicorn + Django + Heroku. Python Path Issue

foreman start 

на моем локальном хосте, и быть в состоянии понять, будет ли приложение работать в производственной среде. Недавно я принял решение перенести все приложения нашего проекта в подпапку под названием «приложения». Это означало редактирование переменной среды DJANGO_SETTINGS_MODULE среди других файлов. Сделав это, я экспериментировал с мастером и стрельбой, пока я не запустил локальный сервер. На данный момент я развернулся на производство. Излишне говорить, что произошла ошибка:

Running `gunicorn --workers=4 applications.rocketlistings.wsgi -b 0.0.0.0: -k gevent` attached to terminal... up, run.8052 
Traceback (most recent call last): 
    File "/app/.heroku/python/bin/gunicorn", line 9, in <module> 
    load_entry_point('gunicorn==0.17.2', 'console_scripts', 'gunicorn')() 
    File "/app/.heroku/python/lib/python2.7/site-packages/distribute-0.6.34-py2.7.egg/pkg_resources.py", line 343, in load_entry_point 
    return get_distribution(dist).load_entry_point(group, name) 
    File "/app/.heroku/python/lib/python2.7/site-packages/distribute-0.6.34-py2.7.egg/pkg_resources.py", line 2307, in load_entry_point 
    return ep.load() 
    File "/app/.heroku/python/lib/python2.7/site-packages/distribute-0.6.34-py2.7.egg/pkg_resources.py", line 2013, in load 
    entry = __import__(self.module_name, globals(),globals(), ['__name__']) 
ImportError: No module named app.wsgiapp 

Я не уверен, что я делаю не так, и это очень трудно отлаживать ситуацию, учитывая неясное удаленную установку Heroku работает. Other threads Обсуждение этой ошибки предполагает, что это проблема пути. Это звучит очень правдоподобно, но я не могу придумать, что может быть неправильным в этом пути, учитывая, что у меня есть файл init .py в папке моих приложений, и все работает локально.

Вот мой путь производства/PYTHONPATH все равно:

Running `echo $PATH` attached to terminal... up, run.2583 
/app/.heroku/python/bin:/usr/local/bin:/usr/bin:/bin 

Running `echo $PYTHONPATH` attached to terminal... up, run.8026 
/app/ 

Заранее спасибо!

ответ

2

Иногда это происходит, когда Gunicorn находит еще один модуль под названием «приложение» в PYTHONPATH. Установка PYTHONPATH на фальшивое значение решает проблему:

$ heroku config:set PYTHONPATH=fakepath 

https://github.com/heroku/heroku-buildpack-python/wiki/Troubleshooting#no-module-named-appwsgiapp

+0

Это закончилось тем, что этот вопрос. Благодаря! – Teddy

 Смежные вопросы

  • Нет связанных вопросов^_^