重定向到自定义错误页面
重定向到自定义错误页面 网站通常包含诸多页面,因此很难保证每个页面在运行时都不会发生错误。当页面发生错误时会产生详细的错误信息,这些信息对于普通访问者来说晦涩难懂,因此需要在客户端以一个友好的页面向用户提示错误信息。此时,可以通过配置“Web.config”文件,在页面发生错误时将程序重定向到自定义的错误页面。在“Web.config”文件中,配置连接错误页面是在<customerrors></customerrors>节点中完成的,其中可以配置的属性如表5-11所示。表5-11 重定向到错误页面使用的属性属 性 说 明 mode 指定是否启用或禁用自定义错误,包括:On(启用自定义错误)、Off(禁用自定义错误)、RemoteOnly(服务器端显示ASP.NET给出的详细错误信息,而客户端显示自定义的错误页面) defaultRedirect 指定页面发生错误时,重定向到的默认页面地址 例如,下面的代码演示了页面发生错误时,将程序重定向到error.aspx:<customerrors mode="On" defaultredirect="error.aspx"></customerrors>在<customerrors>节点下还可以设置子节点<error>,通过该子节点可以将HTTP的状态代码与自定义错误页关联起来。此时,在子节点<error>中可以设置的属性如表5-12所示。表5-12 子节点<error>中使用的属性属 性 说 明 statusCode 指定发生的错误HTTP状态代码 redirect 指定发生错误时重定向到的页面地址 例如,下面的代码显示了在发生401错误(未授权)和404错误(未找到)时,分别将重定向到自定义的错误页面Unauthorized.aspx和FileNotFound.aspx:<customerrors mode="RemoteOnly" defaultredirect="error.aspx"><error statuscode="401" redirect="Unauthorized.aspx"></error><error statuscode="404" redirect="FileNotFound.aspx "></error></customerrors></error></error></error></customerrors>