大家好,感谢您抽出宝贵时间查看我的问题。
我是Python的新手,以为我有php / mysql的经验。
我刚刚交给django网站的代码存储库,并要求在服务器上启动并运行。 我已经能够运行syncdb和迁移。 现在我正试图在浏览器中导航到我的网站,这是我得到的错误:
ImportError: Could not import settings 'settings.py' (Is it on sys.path?): No module named settings.py
我的apach2.conf python配置如下所示:
<Location "/">
SetHandler python-program
PythonHandler django.core.handlers.modpython
PythonOption django.root /myproject
SetEnv DJANGO_SETTINGS_MODULE settings.py
PythonPath "['/home/ubuntu/envs/live/','/home/ubuntu/envs/live/myproject','/home/ubuntu/envs/live/myproject/apps', '/home/ubuntu/envs/stage/myproject', '/home/ubuntu/envs/', '/var/www'] + sys.path"
PythonDebug on
settings.py文件位于/ home / ubuntu / venvs / live / myproject目录中。
有人可以帮我吗?
谢谢!
答案 0 :(得分:1)
应该只是:
SetEnv DJANGO_SETTINGS_MODULE settings
没有'.py'。也就是说,它是一个Python模块路径,而不是文件名。
请注意,mod_python是正式的死项目。 Django的支持已被弃用。您应该查看替代mod而不是mod_python来托管Django。
答案 1 :(得分:0)
我认为你应该翻转以下几行的顺序:
SetEnv DJANGO_SETTINGS_MODULE settings.py
PythonPath "['/home/ubuntu/envs/live/','/home/ubuntu/envs/live/myproject','/home/ubuntu/envs/live/myproject/apps', '/home/ubuntu/envs/stage/myproject', '/home/ubuntu/envs/', '/var/www'] + sys.path"
首先设置可以找到settings.py的Python路径,然后将env设置为该文件。
但是,您应该只需将mod-wsgi安装为very well documented。