Skip to main content
 首页 » 编程设计

python之是什么导致 Django 在 6 次中只有 3 次使用 500.html

2024年08月29日27开发

这很奇怪。

下面有一个 500.html 模板。当我通过 url 引用一个不存在的页面时,我的 500.html 将显示三次(如果我尝试反复重新加载页面),然后我得到三次 apache 内部服务器错误。我的兄弟一直在两者之间摇摆不定。

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" 
    "http://www.w3.org/TR/html4/strict.dtd"> 
<html lang="en"> 
<head> 
    <title>Page unavailable</title> 
</head> 
<body> 
    <h1>Page unavailable</h1> 
    <p>Sorry, but the requested page is unavailable due to a 
    server hiccup.</p> 
    <p>Our engineers have been notified, so check back later.</p> 
</body> 
</html> 

在我收到 Apache 内部服务器错误的三次过程中,错误日志显示 500.html 不存在 - 但它确实存在。之前拉了三次。

我清除了缓存并尝试了不同的浏览器,结果相同。

感谢您的帮助。

编辑 1

错误日志摘录:

[Tue Mar 05 22:28:22 2013] [error] [client 127.0.0.1] mod_python (pid=8262, interpreter='127.0.1.1', phase='PythonHandler', handler='django.core.handlers.modpython'): Application error 
[Tue Mar 05 22:28:22 2013] [error] [client 127.0.0.1] ServerName: '127.0.1.1' 
[Tue Mar 05 22:28:22 2013] [error] [client 127.0.0.1] DocumentRoot: '/var/www' 
[Tue Mar 05 22:28:22 2013] [error] [client 127.0.0.1] URI: '/test' 
[Tue Mar 05 22:28:22 2013] [error] [client 127.0.0.1] Location: '/test' 
[Tue Mar 05 22:28:22 2013] [error] [client 127.0.0.1] Directory: None 
[Tue Mar 05 22:28:22 2013] [error] [client 127.0.0.1] Filename: '/www/test/wsgi.py' 
[Tue Mar 05 22:28:22 2013] [error] [client 127.0.0.1] PathInfo: '' 
[Tue Mar 05 22:28:22 2013] [error] [client 127.0.0.1] Traceback (most recent call last): 
[Tue Mar 05 22:28:22 2013] [error] [client 127.0.0.1]   File "/usr/lib/python2.7/dist-packages/mod_python/importer.py", line 1537, in HandlerDispatch\n    default=default_handler, arg=req, silent=hlist.silent) 
[Tue Mar 05 22:28:22 2013] [error] [client 127.0.0.1]   File "/usr/lib/python2.7/dist-packages/mod_python/importer.py", line 1229, in _process_target\n    result = _execute_target(config, req, object, arg) 
[Tue Mar 05 22:28:22 2013] [error] [client 127.0.0.1]   File "/usr/lib/python2.7/dist-packages/mod_python/importer.py", line 1128, in _execute_target\n    result = object(arg) 
[Tue Mar 05 22:28:22 2013] [error] [client 127.0.0.1]   File "/usr/lib/python2.7/dist-packages/django/core/handlers/modpython.py", line 180, in handler\n    return ModPythonHandler()(req) 
[Tue Mar 05 22:28:22 2013] [error] [client 127.0.0.1]   File "/usr/lib/python2.7/dist-packages/django/core/handlers/modpython.py", line 158, in __call__\n    response = self.get_response(request) 
[Tue Mar 05 22:28:22 2013] [error] [client 127.0.0.1]   File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py", line 153, in get_response\n    response = self.handle_uncaught_exception(request, resolver, sys.exc_info()) 
[Tue Mar 05 22:28:22 2013] [error] [client 127.0.0.1]   File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py", line 228, in handle_uncaught_exception\n    return callback(request, **param_dict) 
[Tue Mar 05 22:28:22 2013] [error] [client 127.0.0.1]   File "/usr/lib/python2.7/dist-packages/django/utils/decorators.py", line 91, in _wrapped_view\n    response = view_func(request, *args, **kwargs) 
[Tue Mar 05 22:28:22 2013] [error] [client 127.0.0.1]   File "/usr/lib/python2.7/dist-packages/django/views/defaults.py", line 32, in server_error\n    t = loader.get_template(template_name) # You need to create a 500.html template. 
[Tue Mar 05 22:28:22 2013] [error] [client 127.0.0.1]   File "/usr/lib/python2.7/dist-packages/django/template/loader.py", line 145, in get_template\n    template, origin = find_template(template_name) 
[Tue Mar 05 22:28:22 2013] [error] [client 127.0.0.1]   File "/usr/lib/python2.7/dist-packages/django/template/loader.py", line 138, in find_template\n    raise TemplateDoesNotExist(name) 
[Tue Mar 05 22:28:22 2013] [error] [client 127.0.0.1] TemplateDoesNotExist: 500.html 

请您参考如下方法:

我会尝试重新启动 apache。我注意到在任何更改后处理 url 的方式不一致。这听起来与我遇到的问题非常相似,当时 url 有时会在刷新时加载。