asp.net 自定义错误页
来源:互联网 发布:高斯 知乎 编辑:程序博客网 时间:2024/05/29 13:45
1使用定制错误页面
虽然我们发送给用户的公用错误信息是安全的,就是说它不会威胁到应用程序的秘密,但是这样的信息并不好看。也许你希望用户永远也看不到这样的信息。相反, 当处理请求的过程中,如果发生了一个为处理的错误,你希望能够显示自己的“定制错误页面”,显示出自己的品牌以及特定的错误信息。
向ASP.NET 应用程序中增加定制错误信息非常容易。首先,编写自己的 web页面,它可以是任何类型的文件:.htm,.aspx,.asp,等等。然后在应用程序的config.web文件中修改配置信息,让它指向这个文 件。
举例说明,以下这个配置信息说明在发生了任何未能预定处理错误的情况下,浏览器都应该被重定向到“ErrorPage.aspx”页面:
需要在web.config中配置:
<!--配置自定义错误,未关闭,打开,详细信息-->
<system.web>
<customErrors mode="On" defaultRedirect="~/ErrorPage.aspx">
<error statusCode='500' redirect='~/Erorr500.htm'/>
<error statusCode='403' redirect='~/Erorr403.htm'/>
<error statusCode='404' redirect='~/Erorr404.htm'/>
<error statusCode='400' redirect='~/Erorr505.htm'/>
</customErrors>
</system.web>
“on”:意思是总是发出定制错误页面;
“off”:意思是从不发出定制错误页面(你总是看到原始的错误信息);
“remoteonly”:意思是只有当远程浏览器点击站点时才发出定制错误页面(而在实际机器上点击站点的开发人员看到的是详细的错误信息)。
2 在Global.asax文件中添加应用出错代码,写入系统日志文件
protected void Application_Error(Object sender, EventArgs e)
{
Exception LastError = Server.GetLastError();
String ErrMessage = LastError.ToString();
String LogName = "MyLog";
String Message = "Url " + Request.Path + " Error: " + ErrMessage;
if (!EventLog.SourceExists(LogName))
{
EventLog.CreateEventSource(LogName, LogName);
}
EventLog Log = new EventLog();
Log.Source = LogName;
Log.WriteEntry(Message, EventLogEntryType.Information, 1);
Log.WriteEntry(Message, EventLogEntryType.Error, 2);
Log.WriteEntry(Message, EventLogEntryType.Warning, 3);
Log.WriteEntry(Message, EventLogEntryType.SuccessAudit, 4);
Log.WriteEntry(Message, EventLogEntryType.FailureAudit, 5);
}
原帖地址:http://www.cnblogs.com/innhyul/archive/2010/03/26/1696947.html
虽然我们发送给用户的公用错误信息是安全的,就是说它不会威胁到应用程序的秘密,但是这样的信息并不好看。也许你希望用户永远也看不到这样的信息。相反, 当处理请求的过程中,如果发生了一个为处理的错误,你希望能够显示自己的“定制错误页面”,显示出自己的品牌以及特定的错误信息。
向ASP.NET 应用程序中增加定制错误信息非常容易。首先,编写自己的 web页面,它可以是任何类型的文件:.htm,.aspx,.asp,等等。然后在应用程序的config.web文件中修改配置信息,让它指向这个文 件。
举例说明,以下这个配置信息说明在发生了任何未能预定处理错误的情况下,浏览器都应该被重定向到“ErrorPage.aspx”页面:
需要在web.config中配置:
<!--配置自定义错误,未关闭,打开,详细信息-->
<system.web>
<customErrors mode="On" defaultRedirect="~/ErrorPage.aspx">
<error statusCode='500' redirect='~/Erorr500.htm'/>
<error statusCode='403' redirect='~/Erorr403.htm'/>
<error statusCode='404' redirect='~/Erorr404.htm'/>
<error statusCode='400' redirect='~/Erorr505.htm'/>
</customErrors>
</system.web>
“on”:意思是总是发出定制错误页面;
“off”:意思是从不发出定制错误页面(你总是看到原始的错误信息);
“remoteonly”:意思是只有当远程浏览器点击站点时才发出定制错误页面(而在实际机器上点击站点的开发人员看到的是详细的错误信息)。
2 在Global.asax文件中添加应用出错代码,写入系统日志文件
protected void Application_Error(Object sender, EventArgs e)
{
Exception LastError = Server.GetLastError();
String ErrMessage = LastError.ToString();
String LogName = "MyLog";
String Message = "Url " + Request.Path + " Error: " + ErrMessage;
if (!EventLog.SourceExists(LogName))
{
EventLog.CreateEventSource(LogName, LogName);
}
EventLog Log = new EventLog();
Log.Source = LogName;
Log.WriteEntry(Message, EventLogEntryType.Information, 1);
Log.WriteEntry(Message, EventLogEntryType.Error, 2);
Log.WriteEntry(Message, EventLogEntryType.Warning, 3);
Log.WriteEntry(Message, EventLogEntryType.SuccessAudit, 4);
Log.WriteEntry(Message, EventLogEntryType.FailureAudit, 5);
}
原帖地址:http://www.cnblogs.com/innhyul/archive/2010/03/26/1696947.html
- asp.net 自定义错误页
- asp.net 自定义错误页
- .net asp.net自定义错误页
- asp.net mvc3 配置自定义错误页
- ASP.NET自定义错误页面
- ASP.NET自定义错误页面
- ASP.NET自定义错误页面
- ASP.NET自定义错误页面
- asp.net自定义错误页面
- ASP.NET自定义错误页面
- ASP.NET自定义错误页面
- ASP.NET自定义错误页面
- ASP.NET自定义错误页面
- asp.net自定义错误页面
- ASP.NET自定义错误页面
- asp.net自定义错误页面
- asp.net自定义错误页面
- asp.net自定义错误页面
- Delphi调用CreateProcess创建线程
- Dufe王彬
- 关于ajax应用中session过期问题的几个解决方案
- java 异常抛出
- 导出HTML的Table到Excel中
- asp.net 自定义错误页
- BingLiang Sha
- Delphi ArcEngine 创建比例尺
- ashx中使用session
- 关于javascript的apply和call函数
- java入门与加深
- 关于baidu,google,收录本网站的url地址,当地址是.html后缀的时候
- 用dom生成html文件.的常见问题
- Ajax框架及原理分析(更新程度:完毕 )