2

当我将 django 与 uwsgi 与 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”选项(单解释器模式)。

4

2 回答 2

1

文档似乎提出了两种可能性。

首先,从 python 路径参数中删除单引号。其次,链接页面上的示例有--python-path代替--pythonpath(即使页面顶部的索引另有说明)。值得尝试。

于 2010-08-12T03:29:49.977 回答
0

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

于 2012-06-07T22:39:08.333 回答