Django uwsgi导入错误

Zed*_*ter 7 django import nginx virtualenv uwsgi

我有一个名为的应用程序的Django项目subscribe.在root中urls.py我使用include来自subscribeurls.py.

我把对INSTALLED_APPS subscribesubscribeurls.py我使用的subscribe.views.<name>产品,请致电我的看法.服务器在python manage.py runserver本地运行时一切正常.但是当服务器使用virtualenv在nginx + uwsgi上运行时,我已经得到了ImportError: No module named subscribe.当我改变subscribe,以project.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
Run Code Online (Sandbox Code Playgroud)

为什么我应该使用绝对路径导入以及如何使用virtualenv将其更改为nginx + uwsgi上的相对位置?

Vic*_*kov 8

你的uwsgi配置应该包含pythonpath=/path/where/lives/settings.py/指令,因此python interpreter将知道在哪里找到你的应用程序.

有关uwsgi配置选项的更多信息: