ASP.net错误处理(错误跳转页 webconfig)
使用定制错误页面
虽然我们发送给用户的公用错误信息是安全的,就是说它不会威胁到应用程序的秘密,但是这样的信息并不好看。也许你希望用户永远也看不到这样的信息。相反,当处理请求的过程中,如果发生了一个为处理的错误,你希望能够显示自己的“定制错误页面”,显示出自己的品牌以及特定的错误信息。
向ASP.NET 应用程序中增加定制错误信息非常容易。首先,编写自己的 web页面,它可以是任何类型的文件:.htm,.aspx,.asp,等等。然后在应用程序的config.web文件中修改配置信息,让它指向这个文件。
举例说明,以下这个配置信息说明在发生了任何未能预定处理错误的情况下,浏览器都应该被重定向到“ErrorPage.aspx”页面:
<configuration>
<customerrors mode="remoteonly" defaultredirect="ErrorPage.aspx" />
</configuration>
<customerrors>标记中的“defaultredirect”属性定义了在发生错误的情况下,用户将被重定向到的“默认”页面。或者,也可以根据响应的http代码状态,重定向到其它的页面来覆盖这个默认值。例如:重定向到一个特殊的“未找到文件”错误页面、“非法访问”错误页面、“服务器冲突”错误页面等等。
举例说明,以下的配置信息覆盖3个特定的http 状态代码,所有其它错误都返回到一个默认页面:
<customerrors defaultredirect="http://anotherhost/error.aspx" mode="remoteonly">
<error statuscode="500" redirect="http:/anotherhost/pages/callsupport.html" />
<error statuscode="404" redirect="http:/anotherhost/pages/adminmessage.html" />
<error statuscode="403" redirect="http:/anotherhost/pages/noaccess.html" />
</customerrors>
在定制错误页面上有一件事我们已经遇到过,那就是虽然它们对于已经完成的情况非常有用,然而在开发过程中却非常难以对付。因为你预想到在开发过程中会有bug,并且当你发现的时候,真的希望看到实际的错误信息跟踪。为了解决这个问题,<customerrors>标记支持一个有3个值的“mode”属性:
“on”:意思是总是发出定制错误页面;
“off”:意思是从不发出定制错误页面(你总是看到原始的错误信息);
“remoteonly”:意思是只有当
相关文档:
在Web编程过程中,存在着很多安全隐患。比如在以前的ASP版本中,Cookie为访问者和编程者都提供了方便,并没有提供加密的功能。打开IE浏览器,选择“工具”菜单里的“Internet选项”,然后在弹出的对话框里单击“设置”按钮,选择“查看文件”按钮,在弹出的窗口中,就会显示硬盘里 ......
ItemTemplate:项模版,标记了每行显示的内容
AlternatingItemTemplate:交替项模版,可设置交替行显示不同的风格,不设置时,与项模版相同
SelectedItemTemplate:选中模版,设置选中后的特殊样式
EditItemTemplate:编辑项模版
HeaderTemplate和FooterTemplate:页眉和页脚的模版
SeparatorTemplate:分隔符模版,一般用 ......
首先在应用程序的WEB.CONFIG修改如下节点。
<httpHandlers>
<add verb="*" path="*.html" type="System.Web.UI.PageHandlerFactory"/>
</httpHandlers>
<assemblies>
<buildProviders>
<add ext ......
今天遇到一个头疼的问题,修改别人写的asp.net页面的样式,我把在页面的样式代码剪切到css文件中,唉,出错了。样式出不来。找了半天错,路径也对啊,就是第一次加载页面时我设置的背景图片出不来,再刷一次页面就出来了,不知道为什么,把他考到页面上就OK。最终还是找出错了。自己太马虎了,代码怎么能随便copy的,backgr ......
本文翻译自:Mixing Forms and Windows Security in ASP.NET
摘要:ASP.NET开发人员曾经问到过如何使用Forms和Windows混合验证。Paul Wilson提供了一个解决方案来获得Windows用户名,或者,将用户转向登录页面。
简介
我曾经遇到很多ASP.NET开发人员问到如何使用Forms和Windows混合验证。通常的回答是:“ASP.NET不 ......