[Log]ASP.NET之HttpModule拦截404异常
2023-09-14 08:59:35 时间
Httpmodule代码: public class Error404Module : IHttpModule { public void Init(HttpApplication context) { context.Error += new EventHandler(Context_Error); } protected void Context_Error(object sender, EventArgs e) { HttpContext ctx = HttpContext.Current; HttpResponse response = ctx.Response; HttpRequest request = ctx.Request; Exception ex = ctx.Server.GetLastError(); HttpException hex = ex as HttpException; if (hex != null && hex.GetHttpCode() == 404) { ctx.Server.ClearError(); string url = request.Url.AbsoluteUri.ToLower(); if (url.Contains(@"http://hj.woniu.com")) { url = url.Replace(@"http://hj.woniu.com", @"http://sg.hj.woniu.com"); } response.Redirect(url, true); } } public void Dispose() { } } Web.Config配置: <httpModules> <add name="Error404Module" type="ActHJ.ErrorModules.Error404Module"/> </httpModules> <system.web> <compilation debug="false"> <assemblies> <add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" /> <add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> <add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" /> <add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" /> </assemblies> <buildProviders> <add extension=".html" type="System.Web.Compilation.PageBuildProvider" /> <add extension=".htm" type="System.Web.Compilation.PageBuildProvider" /> </buildProviders> </compilation> <system.webServer> <validation validateIntegratedModeConfiguration="false"/> <modules> <remove name="ScriptModule"/> <add name="ScriptModule" preCondition="managedHandler" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> <add name="Error404Module" type="ActHJ.ErrorModules.Error404Module"/> </modules>
相关文章
- 分享几个.NET WinForm开源组件,纪念逐渐远去的WinForm。。。
- 【原创】开源Math.NET基础数学类库使用(16)C#计算矩阵秩
- .NET 扩展方法 (二)
- Windows + IIS 环境部署Asp.Net Core App
- 《ASP.NET MVC4 WEB编程》学习笔记------Web API 续
- C#.NET常见问题(FAQ)-如何生成release版本的程序,生成debug版本的程序
- asp.net中c# TextBox.MaxLength例子
- asp.net core 2.0的认证和授权
- ASP.NET Core中如影随形的”依赖注入”[上]: 从两个不同的ServiceProvider说起
- 学习ASP.NET Core, 怎能不了解请求处理管道[5]: 中间件注册可以除了可以使用Startup之外,还可以选择StartupFilter
- ASP.NET Core中的依赖注入(3): 服务的注册与提供
- ASP.NET Core中的依赖注入(2):依赖注入(DI)
- Atitit,通过pid获取进程文件路径 java php c#.net版本大总结
- atitit.系统托盘图标的设计java swing c# .net c++ js
- Word DocX 模板数据填充 .NET Word 报表
- ASP.NET Web Pages - WebMail 对象
- ASP.NET Web Forms - Validation 服务器控件
- ASP.NET Web Forms - 数据库连接
- ASP.NET MVC上传图片前后台内容
- ASP.NET MVC4 View层_Razor操作Html元素
- 微软ASP.NET网站部署指南(4):配置项目属性
- atitit.软件开发GUI 布局管理优缺点总结java swing wpf web html c++ qt php asp.net winform
- asp.net core 中的路由
- ASP.Net 内置对象
- 在.NET Core Web API 中应用 Swagger
- 关于ASP.net开启身份验证时集成的托管管道模式下不适用的 ASP.NET 设置
- Asp.Net Core文件上传IFormFile