Django未处理的异常响应状态代码

时间:2011-08-04 15:53:13

标签: django django-views

运行django 1.3。如果我在视图中有未处理的异常,例如

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"
在settings.py中

DEBUG = FALSE。如果我更改为DEBUG = TRUE,则响应状态代码正确为500。

1 个答案:

答案 0 :(得分:0)

使用DEBUG = False,它会尝试运行500.html模板。你创建了那个文件吗?