使用HttpModules实现Asp.net离线应用程序
作者 佚名技术
来源 NET编程
浏览
发布时间 2012-04-12
当我们在对某个ASP.NET应用程序做维护时,此时可能还有某些客户会访问程序,此时如果你在更新某些程序,可能会出现那报错的页面或黄页。较好的做法是提供一个离线的页面,上面有些提示信息。例如,正在维护中,让客户过会儿在访问之类的。当客户访问default.aspx页面时,如果不是管理员那就让他们重定向到Offline页面。我们可以使用HttpModules来实现这功能,在服务器上放一个名为offline.html的文件,当时这个文件存在时,那么可以说维护模式开始了,然后在web.config中配置管理员机器的IP。 <add key="AdminIP" value="127.0.0.1"/> HttpModules: /// <summary> /// This is how you take an ASP.NET application offline the /// Arnold Matusz way with AppOfflineModule /// </summary> public class AppOfflineModule : IHttpModule { public void Dispose() { } public void Init(HttpApplication context) { context.BeginRequest += new EventHandler(context_BeginRequest); } void context_BeginRequest(object sender, EventArgs e) { HttpApplication application = (HttpApplication)sender; HttpContext context = application.Context; if (File.Exists(Path.Combine(context.Server.MapPath("~"), "offline.html"))) { string ip = context.Request.UserHostAddress; string adminIP = ConfigurationManager.AppSettings["AdminIP"]; if (ip != adminIP) { context.RewritePath("~/offline.html"); } } } } 在web.config中注册这个Module:
<httpModules> <add name="AppOfflineModule" type="AppOfflineModule"/> </httpModules>
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: HttpContext类Current属性下一篇: 验证密码强度
关于使用HttpModules实现Asp.net离线应用程序的所有评论