我有一個名爲subscribe
的應用程序的Django項目。在根urls.py
我使用從subscribe
的urls.py
包括。Django uwsgi導入錯誤
我投入INSTALLED_APPS
subscribe
和subscribe
的urls.py
我用subscribe.views.<name>
產品,請致電我的看法。當服務器在本地運行時爲python manage.py runserver
所有工作正常。但是當服務器運行在帶有virtualenv的nginx + uwsgi上時,我有ImportError: No module named subscribe
。 當我更換subscribe
到project.subscribe
在INSTALLED_APPS
和subscribe
的urls.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相對回來?
加上'project'到你的Python路徑或者通過virtualenv中啓動腳本或以其他方式 –
我的啓動腳本中已經包括它: sys.path.insert(0,'/ home/user/project') – ZedXter
Django威脅文件夾與__init__.py作爲包和喲你在'wsgi'腳本中將'/ home/user/project'設置爲根目錄,所以它應該像'python manage.py runserver'一樣工作。 –