python - mod_python 无法看到我的 Django 项目设置文件

标签 python django apache mod-python

我需要在我的 apache 服务器上部署 Django 应用程序,我已将以下内容添加到我的 httpd.conf 中:

<Location "/dashboard/">
    SetHandler python-program
    PythonHandler django.core.handlers.modpython
    PythonPath "['/home/firas/project/trunk/dashboard/analytics','/home/firas/project/trunk/dashboard', '/home/firas/project/trunk'] + sys.path"
    SetEnv DJANGO_SETTINGS_MODULE dashboard.settings
    PythonOption django.root /dashboard
    PythonDebug On
</Location>

我在请求我的应用程序时收到以下错误:

mportError: Could not import settings 'settings' (Is it on sys.path? Does it have syntax errors?): No module named settings

我的settings.py没有语法错误。

有什么线索吗?

最佳答案

如果你想让apache看到dashboard.settings,PythonPath应该以“project/trunk”结尾。

您可以使用其中之一

PythonPath "['/home/firas/project/trunk'] + sys.path"
SetEnv DJANGO_SETTINGS_MODULE dashboard.settings

PythonPath "['/home/firas/project/trunk/dashboard/analytics','/home/firas/project/trunk/dashboard', '/home/firas/project/trunk'] + sys.path"
SetEnv DJANGO_SETTINGS_MODULE settings

第一个更好,IMO。

关于python - mod_python 无法看到我的 Django 项目设置文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3007835/

相关文章:

python - 子类化 dict : should dict. __init__() 被调用?

python - 捕获 yyyy-mm-dd 日期的 Django url

Django缓存一个大列表

apache - 在 Mac OSX 10.9 "Mavericks"上安装 mod_mono

apache - 如何将 websocket 请求从 Apache httpd 转发到 Apache Tomcat?

php - 未定义或定义的索引?决定

python - subprocess.call() 和 subprocess.Popen() 之间有什么区别使前者的 PIPE 安全性降低?

python - "Select a valid choice."在 Django 中使用 Modelform 时出错

python - 如果django模型已经有相关类,如何将其转换为抽象模型

django - 安装pipenv导致pip3无法使用