IIS服务器web.config设置404 403 500错误转发

IIS服务器web.config设置404 403 500错误转发

分类: 网站代码 作者:网络 阅读量:

一、customErrors和httpErrors的区别

customErrors 用于捕捉ASP.NET触发的错误,静态html页面或目录不存在等错误,不会被捕捉到。

httpErrors 用于捕捉IIS触发的错误,IIS7+版本才支持。

二、配置文件

1.IIS7+:

<system.web>
    <customErrors mode="On" defaultRedirect="Error.html">
        <error statusCode="403" redirect="/Error403" />
        <error statusCode="404" redirect="/Error404" />
        <error statusCode="500" redirect="/Error500" />
    </customErrors>
</system.web>
<system.webServer>
  <httpErrors errorMode="Custom" existingResponse="Auto" defaultResponseMode="ExecuteURL" >
    <remove statusCode="403"/>
    <remove statusCode="404"/>
    <remove statusCode="500"/>
    <!--path不能使用~/开头,直接/-->
    <error statusCode="403" responseMode="ExecuteURL" path="/Error403" />
    <error statusCode="404" responseMode="ExecuteURL" path="/Error404" />
    <error statusCode="500" responseMode="ExecuteURL" path="/Error500" />
  </httpErrors>
</system.webServer>

静态页面配置

<system.webServer>
  <httpErrors errorMode="Custom" existingResponse="Auto" defaultResponseMode="File" >
    <remove statusCode="404"/>
    <error statusCode="404" path="404.html" />
  </httpErrors>
</system.webServer>

2.IIS6.0

配置customErrors

配置customErrors

配置httpErrors

配置httpErrors