使用Django开发服务器工作,但使用mod_wsgi抛出Apache导入错误

时间:2010-01-30 23:15:08

标签: django apache mod-wsgi importerror

我有一个Django项目,可以与它附带的开发服务器一起使用。

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

以下是日志中的错误:

ImportError:没有名为registration

的模块

我正在使用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' ,....]

    
  

任何想法都会受到赞赏。

1 个答案:

答案 0 :(得分:2)

它是否在webserver的pythonpath中?所有那些'/ opt'路径通常都不在标准的python路径中,所以有些东西会为你添加这些我猜的。你确定它也会被添加到网络服务器进程中,还是只为你的用户在某个shell配置文件中设置了PYTHONPATH?

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

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