python - 偶尔的500错误

标签 python mod-wsgi django-wsgi

我们使用 Apache+mod_wsgi 来托管我们的 Django 应用程序。

Apache :

WSGIScriptAlias//home/rls/django_wsgi.py

django_wsgi.py:

import os, sys
sys.path.append('data/misc/django')
os.environ['DJANGO_SETTINGS_MODULE'] = 'rls.settings'

import django.core.handlers.wsgi

application = django.core.handlers.wsgi.WSGIHandler()

一切正常,但偶尔我们会在日志中收到 500 Internal Server Error:

mod_wsgi (pid=4825): Exception occurred processing WSGI script '/home/rls/django_wsgi.py'.
Traceback (most recent call last):
File "/usr/lib/python2.5/site-packages/django/core/handlers/wsgi.py", line 230, in __call__
self.load_middleware()
File "/usr/lib/python2.5/site-packages/django/core/handlers/base.py", line 33, in load_middleware
for middleware_path in settings.MIDDLEWARE_CLASSES:
File "/usr/lib/python2.5/site-packages/django/utils/functional.py", line 276, in __getattr__
self._setup()
File "/usr/lib/python2.5/site-packages/django/conf/__init__.py", line 40, in _setup
self._wrapped = Settings(settings_module)
File "/usr/lib/python2.5/site-packages/django/conf/__init__.py", line 75, in __init__
raise ImportError("Could not import settings '%s' (Is it on sys.path? Does it have syntax errors?): %s" % (self.SETTINGS_MODULE, e))
ImportError: Could not import settings 'rls.settings' (Is it on sys.path? Does it have syntax errors?): No module named rls.settings

当然,settings.py 中没有语法错误,因为它每隔一段时间加载一次都很好。我缺少什么?非常感谢您的帮助。

最佳答案

尝试将绝对路径设置为包含文件 settings.py 的目录。 在你的情况下应该是这样的:

sys.path.append('/%s/data/misc/django'%ROOT_2_DATA)

您还必须检查 apache 组是否具有读/写文件夹的权限。

关于python - 偶尔的500错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5170294/

相关文章:

python - 优化(python)算法的最佳方法?

python - 我无法在 python3 shell 中输入字母 "e"

Django 虚拟主机设置。 Apache mod_wsgi

python - flask + Apache (mod_wsgi) + boto3 : name 'ssl' is not defined

django - 使用 wsgi 将 stdout 和 stderr 重定向到 Django 中的文件

python - 带和不带括号的 pandas 逻辑和运算符产生不同的结果

python - Python 中的键错误

python - Mod_Wsgi PythonHome 不工作

django - 如何使用每个 SITE_ID 的唯一 settings.py 设置 django

django - 部署应用程序 Django Rest 时运行 ASGI 环境的问题