1

我有一个 Django 项目,它可以与它附带的开发服务器一起正常工作。

当我使用“django manage.py runserver”并且应用程序工作正常时,根本没有产生任何错误,但是当我尝试将它与 mod_wsgi 和 Apache 一起使用时,浏览器显示“内部服务器错误”和 500 错误代码,它会生成一个Apache 错误日志中的导入错误。

这是日志中的错误:

ImportError:没有名为注册的模块

我正在使用位于如下路径中的 Django 注册模块:

/opt/raj/photos/registration

我知道注册应用程序在路径中,因为我可以启动 Python shell、导入 sys 并使用 sys.path 获取路径列表。

以下是 Python shell 输出的一些路径:

sys.path ['', '/opt/raj/pyamf', '/opt/raj', '/opt/raj/pictures', '/opt/raj/pictures /registration', '/usr/lib/python2 .6',....]

任何想法将不胜感激。

4

1 回答 1

2

它在网络服务器的 pythonpath 中吗?所有这些“/ opt”路径通常不在标准的python路径中,所以我猜想会为你添加一些东西。你确定它也被添加到网络服务器进程中,还是 PYTHONPATH 设置在某个 shell 配置文件中,仅供你的用户使用?

使用 mod_python 时有一个 PythonPath 指令,mod_wsgi 有类似的东西吗?

这几乎可以肯定是网络服务器的路径与您的路径不同的情况,因此我会将搜索重点放在这些区域。

于 2010-01-30T23:50:16.767 回答