可以使用web.config文件的<customErrors>部分,再<system.web>标记内配置应用程序的定制错误页面:
<customErrors defaultRedirect="url" mode="On|Off|RemoteOnly"></customErrors>
DefaultRedirect表示如果发生错误,默认的URL就重定向到浏览器。这样如果页面访问失败,应用程序就可以恢复,并把用户定向到其他的页面,除了将所有的错误重定向到一个公共页外,还可以将特定的错误页分配给特定的错误状态代码。<customErrors> 配置节支持内部 <error> 标记,该标记使 HTTP 状态代码与自定义错误页关联。例如:
<configuration>
<system.web>
<customErrors mode="RemoteOnly" defaultRedirect="/genericerror.htm">
<error statusCode=" 500" redirect="/error/callsupport.htm"/>
<error statusCode=" 404" redirect="/error/notfound.htm"/>
<error statusCode=" 403" redirect="/error/noaccess.htm"/>
</customErrors>
</system.web>
</configuration>
下表描述了 <error> 标记的属性和值。
属性描述:
StatusCode自定义错误页对应的 HTTP 错误状态代码。例如:403 已禁止、404 未找到、500 内部服务器错误。
Redirect发生错误时客户端浏览器应重定向到的 URL。
<configuration>
<system.web>
<customErrors mode="RemoteOnly" defaultRedirect="/genericerror.htm">
<error statusCode=" 500" redirect="/error/callsupport.htm"/>
<error statusCode=" 404" redirect="/error/notfound.htm"/>
<error statusCode=" 403" redirect="/error/noaccess.htm"/>
</customErrors>
</system.web>
</configuration>
下表描述了 <error> 标记的属性和值。
属性描述:
StatusCode自定义错误页对应的 HTTP 错误状态代码。例如:403 已禁止、404 未找到、500 内部服务器错误。
Redirect发生错误时客户端浏览器应重定向到的 URL。
例如: