http://www.cnblogs.com/efreer/archive/2013/01/24/2874232.html
我在博客园看的这个url重写方法
大家都知道很多网站特别是大型网站现在都用了url伪静态重写来实现用户的易用性和美观性,比如这个网站 http://www.xintaifcw.com 很明显采用了url重写,里面的所有文章内容都是用了http://www.xintaifcw.com/news226.aspx 比如大家看到的这种效果,很明显是采用了asp.net 的url重写方案。
下面废话少说,直接上代码
首先用到微软给我们免费提供的url重写组件:UrlRewriter.dll 这个组件是截获aspx请求,所以我们只能重写成xx.aspx 而不能重写成xx.html 如果要实现xx.html 必须使用iis 的组件才可以实现。
web.confg中配置重写规则
<rewriter>
<rewrite url="~/news(.[0-9]*)\.aspx" to="~/news.aspx?newsid=$1" processing="stop"/>
</rewriter>
规则中我们可以看出 当页面请求 news123.aspx 实际是访问了 news.aspx?newsid=123
我在博客园看的这个url重写方法
大家都知道很多网站特别是大型网站现在都用了url伪静态重写来实现用户的易用性和美观性,比如这个网站 http://www.xintaifcw.com 很明显采用了url重写,里面的所有文章内容都是用了http://www.xintaifcw.com/news226.aspx 比如大家看到的这种效果,很明显是采用了asp.net 的url重写方案。
下面废话少说,直接上代码
首先用到微软给我们免费提供的url重写组件:UrlRewriter.dll 这个组件是截获aspx请求,所以我们只能重写成xx.aspx 而不能重写成xx.html 如果要实现xx.html 必须使用iis 的组件才可以实现。
web.confg中配置重写规则
<rewriter>
<rewrite url="~/news(.[0-9]*)\.aspx" to="~/news.aspx?newsid=$1" processing="stop"/>
</rewriter>
规则中我们可以看出 当页面请求 news123.aspx 实际是访问了 news.aspx?newsid=123
<rewrites>
<add name="schoolurl3" virtualUrl="^~/city/(.*)" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/home/Area/WriteCity.aspx?city=$1" ignoreCase="true"/>
</rewrites>
url="~/news([0-9]*)\.aspx"
to="~/news.aspx?newsid=$1"