Django + mod_wsgi如何影响python路径?
我有一个简单的设置,我的Python库放在/domains/somedomain.com/libs/这个文件夹里,所有的测试都运行得很好。我用DJANGO_SETTINGS_MODULE来启动WSGI,设置为"somedomain.settings",其中somedomain是libs/文件夹里的一个包。
突然间,当我把pywapi.py文件放进libs/后,访问网站时却无法导入这个文件。但是,如果我在我的wsgi脚本中添加'import pywapi',在Apache访问时就会失败,但如果我直接写这个代码,它又能成功。WSGI本身其实是把libs/添加到了路径中,所以我知道在运行时应该能找到它。这个路径也是绝对路径,所以当前工作目录的变化不应该导致这个问题。
我想不出其他原因了,今天早上我本来可以高效工作的,但现在却在这上面折腾了半天。
1 个回答
2
我觉得这个问题跟文件的权限有关。你需要检查一下运行 wsgi 的用户(通常是 apache 用户)是否有权限读取和写入 libs 文件夹里的所有内容,特别是要确保它能读取 pywapi.py 这个文件。