如果在执行请求的过程中出现未处理的错误,
则通过 <customErrors> 节可以配置相应的处理步骤。具体说来,
开发人员通过该节可以配置
要显示的 html 错误页
以代替错误堆栈跟踪。
<customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
<error statusCode="403" redirect="NoAccess.htm" />
<error statusCode="404" redirect="FileNotFound.htm" />
则通过 <customErrors> 节可以配置相应的处理步骤。具体说来,
开发人员通过该节可以配置
要显示的 html 错误页
以代替错误堆栈跟踪。
<customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
<error statusCode="403" redirect="NoAccess.htm" />
<error statusCode="404" redirect="FileNotFound.htm" />
</customErrors>
mode有三个值:On Off RemoteOnly
On不管是服务器还是客户看到的都是GenericErrorPage.htm
Off
RemoteOnly在服务端看到的是错误信息,而客户端看到的是定制错误页面。
设置成虚拟路径:
defaultRedirect="~/GenericErrorPage.htm"
redirect="~/NoAccess.htm"
错误页既可使用htm页,也可以使用aspx
可以使用Exception ex = HttpContext.Current.Server.GetLastError();来获取错误页面,应该在配置文件中设置redirectMode="ResponseRewrite"
redirectMode有两个值:
"ResponseRewrite"--相当于Server.Transfer()
"ResponseRedirect"--相当于Response.Redirect()
可以通过Request.RemoteHostAddress来判断ip看到异常信息,
或者读取Session来判断如果是管理员则可以看到异常信息。