没有virtualenv(ImportError)无法启动uWSGI服务器

时间:2012-08-13 10:23:54

标签: python django virtualenv wsgi uwsgi

我正在运行django + nginx + uwsgi。出于某种原因,我无法在没有设置home选项的情况下启动uWSGI,指向虚拟环境。每当我在没有它的情况下启动uWSGI时,它就说它找不到模块django.core.wsgi,就好像python路径是空的(但是系统范围内安装了django 1.4)。

我该如何解决?

1 个答案:

答案 0 :(得分:16)

由于我也在解决这个问题,让我们为所有人写一个答案。 :) 问题是,当以emperor模式(系统范围)启动时,uwsgi主进程不能(或不会)为python(PYTHONPATH)加载正确的环境。 使用virtualenv指定环境。 没有它,你需要设置pythonpath变量,甚至多次指向系统范围的python路径。

举个例子,我的系统是:

pythonpath = /usr/local/lib/python2.7/dist-packages
pythonpath = /usr/lib/python2.7

(使用ini语法)