3

我有一个页面(通用处理程序),我想在其上向客户端返回状态代码 500 以指示出现问题。我这样做:

Response.StatusCode = 500;
Response.StatusDescription = "Internal Server Error";

同时,我会呈现一条友好的消息,告诉用户出了点问题。但是,我没有看到我的消息,而是收到了默认的 IIS 消息,内容如下:

服务器错误 500 - 内部服务器错误。您要查找的资源有问题,无法显示。

如果我进入 IIS 并删除 500 的错误页面,我会收到以下消息:

由于发生内部服务器错误,无法显示该页面。

它在 IIS6 中按预期工作,但在 IIS7 中不正常。我应该怎么做才能让它在 IIS7 中工作?

4

1 回答 1

6

您需要再添加一行来绕过 IIS7 接管(基于您设置的 500 错误代码):

Response.TrySkipIisCustomErrors = true;

参考:HttpResponse.TrySkipIisCustomErrors

于 2010-07-20T09:59:09.993 回答