我随机收到500个服务器错误并尝试诊断问题。设置是:
Apache + mod_python + Django
我的500.html页面由Django提供,但我不知道导致错误的原因。我的Apache access.log和error.log文件不包含任何有价值的调试信息,除了显示请求返回500。
某处是否存在mod_python或一般python错误日志(Ubuntu服务器)?
谢谢!
答案 0 :(得分:4)
是的,你应该在你的apache confs中有一个关于虚拟服务器的错误日志的位置。 例如,我的虚拟服务器的名称是djangoserver,在我的/ etc / apache2 / sites-enabled / djangoserver文件中是行
ErrorLog /var/log/apache2/djangoserver-errors.log
虽然现在我重新阅读了您的问题,但似乎您已经处理了apache日志。我不相信mod_python或python本身有任何单独的日志。
这是一个生产设置吗?
如果不是,您可能希望打开Debug mode,然后Django会生成包含错误信息的非常详细的屏幕。在项目的settings.py中,设置
DEBUG = True
TEMPLATE_DEBUG = DEBUG
禁用通用500错误屏幕并查看详细信息。
答案 1 :(得分:1)
./manage.py runserver 0.0.0.0:8000
从生产目录(喘息!)运行它,所以我知道我正在运行相同的代码。
不可否认,有时某些东西会在Apache下失败,而不是在dev服务器下,但这本身就是一种暗示。