3
正在运行django 1.3。如果我在视图中有未处理的异常,例如Django未处理的异常响应状态码
def test(request):
raise Exception('error')
(通过这里的wget)歌厅页:
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: `index.html'
[ <=> ] 218 --.-K/s in 0s
2011-08-04 17:47:43 (14.9 MB/s) - `index.html' saved [218]
index.html的内容:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>Unhandled Exception</title>
</head><body>
<h1>Unhandled Exception</h1>
<p>An unhandled exception was thrown by the application.</p>
</body></html>
而现在的问题:为什么是响应状态代码200?它应该是500
编辑: 上的lighttpd运行带有命令
manage.py runfcgi --settings=$SETTINGS socket=$SOCKET pidfile=$PIDFILE method=prefork minspare=1 maxspare=1 maxchildren=10 maxrequests=100"
DEBUG = settings.py中FALSE。如果我更改为DEBUG = TRUE,则响应状态码正确为500.
这是从'runserver'出来吗? Nginx/Apache?什么样的设置? –
我已更新问题 – toucan
嗯,我没有在模板文件夹中定义500.html模板文件。这显然使得Django使用标准的异常页面我张贴在我的问题与状态码200.我有点奇怪这是默认行为。我试图寻找Django的来源,但一直未能找到原因。 – toucan