使用Visual Studio开发C#网站,如果后台程序执行出错,微软会默认弹出一个错误的访问页,页面呈现的错误内容会将项目中的敏感信息泄露出来,具有很大的安全隐患,另外就是给客户的印象也会非常不友好。因此,我们需要定制错误页,当程序出错以后应该让程序跳转到自己定义好的错误页面上。那么,如何实现呢?
通过配置web.config文件,配置< customErrors >区域:
< customErrors mode="on" defaultRedirect="MyErrorPage.aspx" >
< error statusCode="403" redirect="NoAccess.htm">
< error statusCode="404" redirect="FileNotFound.htm">
。
。
。
< error statusCode="500" redirect="qqq.htm">
< /customErrors >
将以上代码加到<system.web>标签内。经过配置后,当程序报错的时候就会自动跳转到指定的错误页面!
下面解释下mode属性值得意义
mode有三个可选值:
On:总是显示定制错误页面;
Off:不显示定制错误界面,直接显示调用堆栈等异常信息;
RemoteOnly:对于本机的访问显示调用堆栈等异常信息,对于外部用户的显示定制错误页面。
一般设置为RemoteOnly,这样发生错误的话,管理员可以在服务器的浏览器中看详细错误信息,普通用户看不到