首页 > 代码库 > Global.asax的Application_BeginRequest实现url重写无后缀的代码

Global.asax的Application_BeginRequest实现url重写无后缀的代码

本文为大家详细介绍下利用Global.asax的Application_BeginRequest 实现url重写其无后缀,具体核心代码如下,有需求的朋友可以参考下,希望对大家有所帮助

 

利用Global.asax的Application_BeginRequest 实现url 重写 无后缀

代码如下:

<%@ Application Language="C#" %><script RunAt="server">void Application_BeginRequest(object sender, EventArgs e){string oldUrl = System.Web.HttpContext.Current.Request.RawUrl; //获取初始url//~/123.aspx → ~/Index.aspx?id=123Regex reg = new Regex(@"^\/\d+\.html");if (reg.IsMatch(oldUrl)){string id = reg.Match(oldUrl).ToString().Substring(1, reg.Match(oldUrl).ToString().LastIndexOf(".") - 1);Context.RewritePath("~/Index.aspx?id=" + id);}//~/123 → ~/Index.aspx?id=123Regex reg1 = new Regex(@"^\/\d+$");if (reg1.IsMatch(oldUrl)){string id = reg1.Match(oldUrl).ToString().Substring(1);Context.RewritePath("~/Index.aspx?id=" + id);}//~/index/123 → ~/Index.aspx?id=123Regex reg3 = new Regex(@"^\/index\/\d+$");if (reg3.IsMatch(oldUrl)){string id = reg3.Match(oldUrl).ToString().Substring(7);Context.RewritePath("~/Index.aspx?id=" + id);}}</script> 

 

Global.asax的Application_BeginRequest实现url重写无后缀的代码