在ASP.NET中指定出错页面,不让代码外泄!在ASP.NET中原始的出错页面会暴露部分源代码,由此带来了潜在的安全隐患。
ASP.NET允许应用程序出错时显示用户指定的页面,方法是在web.config文件中修改配置信息。
<?
xml version="1.0" encoding="UTF-8"
?>
<
configuration
>
<
system
.web
>
![dot.gif](/Images/dot.gif)
![dot.gif](/Images/dot.gif)
<
customErrors
mode
="On"
defaultRedirect
="ErrorPage.htm"
/>
![dot.gif](/Images/dot.gif)
![dot.gif](/Images/dot.gif)
</
system.web
>
</
configuration
>
上面的配置信息明确指定了当应用程序出错的时候显示用户定制的页面ErrorPage.htm。并且因为各个应用程序有自己独立的web.config配置文件,所以应用程序之间不会互相干扰。
其中,mode属性表示是否启用定制的用户页面,它可取三个值,如下所示:
On 启用定制的出错页面
Off 禁用定制的出错页面
RemoteOnly 启用定制的出错页面但仅展示给远程用户
defaultRedirect属性表示用户定制出错页面的文件名。
<!-- 自定义错误信息
设置 customError 模式值可以控制应向
用户显示用户友好错误信息而不是错误详细信息(包括堆栈跟踪信息):
“On”始终显示自定义(友好的)信息
“Off”始终显示详细的 ASP.NET 错误信息。
“RemoteOnly”只对不在本地 Web 服务器上运行的
用户显示自定义(友好的)信息。出于安全目的,建议使用此设置,以便
不向远程客户端显示应用程序的详细信息。
-->
注释中说明!
默认下是<customErrors mode="RemoteOnly" />只针对远程用户
改为<customErrors mode="On" defaultRedirect="ErrorPage.htm" />
后始终显示自定义的页面,而不显示程序的详细信息!
在ASP.NET中原始的出错页面会暴露部分源代码,由此带来了潜在的安全隐患。 ASP.NET允许应用程序出错时显示用户指定的页面,方法是在web.config文件中修改配置信息。 上面的配置信息明确指定了当应用程序出错的时候显示用户定制的页面ErrorPage.htm。并且因为各个应用程序有自己独立的web.config配置文件,所以应用程序之间不会互相干扰。 其中,mode属性表示是否启用定制的用户页面,它可取三个值,如下所示: On 启用定制的出错页面 Off 禁用定制的出错页面 RemoteOnly 启用定制的出错页面但仅展示给远程用户 defaultRedirect属性表示用户定制出错页面的文件名。
ASP.NET允许应用程序出错时显示用户指定的页面,方法是在web.config文件中修改配置信息。
![None.gif](/Images/OutliningIndicators/None.gif)
![None.gif](/Images/OutliningIndicators/None.gif)
![None.gif](/Images/OutliningIndicators/None.gif)
![None.gif](/Images/OutliningIndicators/None.gif)
![None.gif](/Images/OutliningIndicators/None.gif)
![dot.gif](/Images/dot.gif)
![dot.gif](/Images/dot.gif)
![None.gif](/Images/OutliningIndicators/None.gif)
![None.gif](/Images/OutliningIndicators/None.gif)
![dot.gif](/Images/dot.gif)
![dot.gif](/Images/dot.gif)
![None.gif](/Images/OutliningIndicators/None.gif)
![None.gif](/Images/OutliningIndicators/None.gif)
![None.gif](/Images/OutliningIndicators/None.gif)
上面的配置信息明确指定了当应用程序出错的时候显示用户定制的页面ErrorPage.htm。并且因为各个应用程序有自己独立的web.config配置文件,所以应用程序之间不会互相干扰。
其中,mode属性表示是否启用定制的用户页面,它可取三个值,如下所示:
On 启用定制的出错页面
Off 禁用定制的出错页面
RemoteOnly 启用定制的出错页面但仅展示给远程用户
defaultRedirect属性表示用户定制出错页面的文件名。
<!-- 自定义错误信息
设置 customError 模式值可以控制应向
用户显示用户友好错误信息而不是错误详细信息(包括堆栈跟踪信息):
“On”始终显示自定义(友好的)信息
“Off”始终显示详细的 ASP.NET 错误信息。
“RemoteOnly”只对不在本地 Web 服务器上运行的
用户显示自定义(友好的)信息。出于安全目的,建议使用此设置,以便
不向远程客户端显示应用程序的详细信息。
-->
注释中说明!
默认下是<customErrors mode="RemoteOnly" />只针对远程用户
改为<customErrors mode="On" defaultRedirect="ErrorPage.htm" />
后始终显示自定义的页面,而不显示程序的详细信息!