Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# IIS7中的自定义错误页面是否应返回最初与其关联的错误状态代码?_C#_.net 3.5_Iis 7 - Fatal编程技术网

C# IIS7中的自定义错误页面是否应返回最初与其关联的错误状态代码?

C# IIS7中的自定义错误页面是否应返回最初与其关联的错误状态代码?,c#,.net-3.5,iis-7,C#,.net 3.5,Iis 7,我正在尝试使用IIS7中使用重定向的自定义错误页。这是我的代码: <httpErrors> <remove statusCode="404" subStatusCode="-1" /> <error statusCode="404" prefixLanguageFilePath="" path="/Pages/NotFound" responseMode="ExecuteURL" /> </httpErrors> 不过,这段代码似

我正在尝试使用IIS7中使用重定向的自定义错误页。这是我的代码:

<httpErrors>
    <remove statusCode="404" subStatusCode="-1" />
    <error statusCode="404" prefixLanguageFilePath="" path="/Pages/NotFound" responseMode="ExecuteURL" />
</httpErrors>

不过,这段代码似乎并没有实际执行任何操作。有人对我是否应该返回404错误以及如何返回有任何指导吗?谢谢。

当您对未找到的页面错误执行重定向时,它本质上是web服务器的异常处理。您将得到200个响应,但只是一个漂亮的页面,上面写着“嗨,您要找的不在这里。”如果没有重定向/自定义错误页面,浏览器将由自己的设备查看404并向最终用户显示某种类型的错误。404错误可以记录在此实例中,因为必须发生错误才能获得重定向。您不需要更改响应代码,除非您有理由这样做(即,未经授权的内容请求您可能希望返回404而不是说未经授权)

至于你的代码,应该是这样的:

Response.StatusCode = 404;
然而,如果您在自定义404错误页面上发送404错误,那么您将在IIS中遇到一些疯狂的循环。404->自定义错误页(返回404)->自定义错误页(返回404)->等等

Response.StatusCode = 404;