uwsgi + django导入错误

时间:2010-08-12 00:42:30

标签: python django uwsgi

当我使用带有uwsgi的django和pythonpath时,我遇到了问题。

我有一个名为'project'的django项目,它是/ sites / django /目录

所以要启动uwsgi我使用这个命令:

/opt/uwsgi/uwsgi -s 127.0.0.1:9001 -C -M 4 -t 30 -A 4 -p 4 -d /var/log/uwsgi.log --pythonpath '/sites/django/project/' --module wsgi

如果我在/ sites / django / project中,它可以工作。

如果我启动python shell并且我写道:

import sys
sys.path.append('/sites/django/project/')
import wsgi

它也有效。

但是当我在/ sites / django / project /之外启动uwsgi命令时出现错误:

  

ImportError:没有名为wsgi的模块

所以我不知道为什么我有ImportError:它在shell中工作。

如果有人有想法, 感谢。

好吧,我找到了答案,似乎这是一个错误,我必须在我的命令中添加“-i”选项(单个解释器模式)。

2 个答案:

答案 0 :(得分:1)

documentation似乎提出了两种可能性。

首先,从python path参数中删除单引号。其次,链接页面上的示例包含--python-path而不是--pythonpath(即使页面顶部的索引另有说明)。值得一试。

答案 1 :(得分:0)

如果您使用的是virtualenv,则需要传入-H标志(http://projects.unbit.it/uwsgi/wiki/VirtualEnv