昨天睡的早,今天起的早,参考了网上一资料研究URL的重写的伪静态页
只需要在Global.asax.cs 的加上Application_BeginRequest
protected void Application_BeginRequest(Object sender, EventArgs e)
{
string oldUrl = HttpContext.Current.Request.RawUrl ;
{
string oldUrl = HttpContext.Current.Request.RawUrl ;
string pattern = @"^(.+)default/(/d+)/.shtml(/?.*)*$";
string replace = "$1default.aspx?id=$2";
string replace = "$1default.aspx?id=$2";
if(Regex.IsMatch(oldUrl, pattern, RegexOptions.IgnoreCase | RegexOptions.Compiled))
{
string newUrl = Regex.Replace(oldUrl, pattern, replace, RegexOptions.Compiled | RegexOptions.IgnoreCase);
this.Context.RewritePath(newUrl);
}
}
{
string newUrl = Regex.Replace(oldUrl, pattern, replace, RegexOptions.Compiled | RegexOptions.IgnoreCase);
this.Context.RewritePath(newUrl);
}
}
然后在IIS中修改Shtml的映射
c:/windows/microsoft.net/framework/v2.0.50727/aspnet_isapi.dll
去掉检查文件是否存在的选择
实现:
default.aspx?id=123
重写为
default/123.shtml