大家都知道很多网站特别是大型网站现在都用了url伪静态重写来实现用户的易用性和美观性,比如这个网站 很明显采用了url重写,里面的所有文章内容都是用了 比如大家看到的这种效果,很明显是采用了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
1
2
3
4
5
6
7
8
|
int
id = 0;
if
(Request[
"newsid"
] !=
null
)
{
if
(
int
.TryParse(Request[
"newsid"
].ToString(),
out
id) && zf_news_BLLSub.IsExistzf_news(id))
{
ae = zf_news_BLLSub.Get_zf_newsEntity(id);
}
|
所以在news.aspx 中加入的处理事件和我们平常的写法没有区别。
如此简单就实现了url重写,url重写也在seo中有重要作用。