我正在运行 django+nginx+uwsgi。出于某种原因,我无法在不设置 home 选项的情况下启动 uWSGI,指向虚拟环境。每当我在没有它的情况下启动 uWSGI 时,它都会说找不到模块 django.core.wsgi,就像 python 路径是空的一样(但系统范围内安装了 django 1.4)。
我该如何解决?
最佳答案
因为我也被这个问题撞到了脑袋,所以让我们写一个答案给大家。 :)
问题是,当以皇帝模式(系统范围)启动时,uwsgi 主进程不能(或不会)为 python (PYTHONPATH) 加载正确的环境。
使用 virtualenv 指定环境。
如果没有它,您需要设置 pythonpath
变量,甚至多次指向系统范围的 python 路径。
举个例子,我的系统是:
pythonpath = /usr/local/lib/python2.7/dist-packages
pythonpath = /usr/lib/python2.7
(使用 ini 语法)
关于python - 没有 virtualenv 无法启动 uWSGI 服务器(ImportError),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11932393/