利用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=123
Regex 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=123
Regex 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=123
Regex reg3 = new Regex(@\"^\\/index\\/\\d+$\");
if (reg3.IsMatch(oldUrl))
{
string id = reg3.Match(oldUrl).ToString().Substring(7);
Context.RewritePath(\"~/Index.aspx?id=\" + id);
}
}
</script>
本文地址:https://www.stayed.cn/item/2410
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我