2011-11-23 579 views
7

我有一個名爲subscribe的應用程序的Django項目。在根urls.py我使用從subscribeurls.py包括。Django uwsgi導入錯誤

我投入INSTALLED_APPSsubscribesubscribeurls.py我用subscribe.views.<name>產品,請致電我的看法。當服務器在本地運行時爲python manage.py runserver所有工作正常。但是當服務器運行在帶有virtualenv的nginx + uwsgi上時,我有ImportError: No module named subscribe。 當我更換subscribeproject.subscribeINSTALLED_APPSsubscribeurls.py更改subscribe.views.<name>project.subscribe.views.<name>所有工作正常。

uwsgi配置:

[uwsgi] 
socket = 127.0.0.1:9003 
workers = 2 
master = true 
virtualenv = /home/user/python 
chdir = /home/user 
env = DJANGO_SETTINGS_MODULE=project.settings 
module = django.core.handlers.wsgi:WSGIHandler() 
daemonize = /home/user/uwsgi.log 

我爲什麼要使用絕對路徑進口以及如何將其更改爲上的nginx + uwsgi用的virtualenv相對回來?

+0

加上'project'到你的Python路徑或者通過virtualenv中啓動腳本或以其他方式 –

+0

我的啓動腳本中已經包括它: sys.path.insert(0,'/ home/user/project') – ZedXter

+0

Django威脅文件夾與__init__.py作爲包和喲你在'wsgi'腳本中將'/ home/user/project'設置爲根目錄,所以它應該像'python manage.py runserver'一樣工作。 –

回答