您的位置:首页 > 编程语言 > ASP

UrlRewritingNet 实现ASP.NET 2.0 中的URL重写

2009-08-28 14:08 549 查看
这几天都在研究SEO优化的问题,伪静态页面无疑是吸引网络爬虫的好办法,常用的方法很多,在IIS中用ISAPI rewrite 重写url,但是那些安装插件在IIS6 里行,但在IIS 7里就不一定行.后来发现Urlrewring (下载地址http://www.urlrewriting.net/116/de/home.html

简单实用,个人认为是.net 2.0重写url的首选--

查看其文档主要功能有以下一些:

1.基于正则表达式的重写
2.支持Themes和母版页
3.支持输出缓存
4.支持信任级别为"Medium"的使用环境
5.支持Postback
6.支持无Cookie的Session
7.运行时添加、修改改写规则
8.容易安装使用

步骤十分简单:

1.引用UrlRewritingNet.UrlRewriter.dll

2.配置web.config (官网全是E语,不过也是很容易理解的,载录官方例子)

<?xml version="1.0"?>
<configuration>
<configSections>
<section name="urlrewritingnet"
requirePermission ="false"
type="UrlRewritingNet.Configuration.UrlRewriteSection, UrlRewritingNet.UrlRewriter" />
</configSections>

<urlrewritingnet
rewriteOnlyVirtualUrls="true"
contextItemsPrefix="QueryString"
defaultPage = "default.aspx"
defaultProvider="RegEx"
xmlns="http://www.urlrewriting.net/schemas/config/2006/07" >
<rewrites>
<add name="RewriteOnDomain" virtualUrl="^http/://(.*)/SampleWeb/domain/(.*)/Detail(.*).aspx"
rewriteUrlParameter="ExcludeFromClientQueryString"
destinationUrl="~/Default.aspx?language=$3&id=$4;&domain=$1"
rewrite="Domain"
ignoreCase="true" />

<add name="Rewrite" virtualUrl="^~/(.*)/Detail(.*).aspx"
rewriteUrlParameter="ExcludeFromClientQueryString"
destinationUrl="~/Default.aspx?language=$1&id=$2"
ignoreCase="true" />

<add name="RedirectInApplication" virtualUrl="^~/(.*)/Default.aspx"
rewriteUrlParameter="ExcludeFromClientQueryString"
destinationUrl="~/$1/Detail_Redirected.aspx"
redirect="Application"
redirectMode="Permanent"
ignoreCase="true" />

<add name="KickBrowserToDomain" virtualUrl="^http/://(.*)/SampleWeb/kickto/(.*).aspx"
rewriteUrlParameter="ExcludeFromClientQueryString"
destinationUrl="http://$2?source=$1"
redirect="Domain"
redirectMode="Permanent"
ignoreCase="true" />
</rewrites>
</urlrewritingnet>

<appSettings/>
<system.web>
<customErrors mode="Off">
</customErrors>
<httpModules>
<add name="UrlRewriteModule"
type="UrlRewritingNet.Web.UrlRewriteModule, UrlRewritingNet.UrlRewriter" />
</httpModules>
<compilation debug="true" />
</system.web>
</configuration>

估计对正则表达式有所认识的朋友一看就懂了,不了解也不用怕,这里有教程:http://unibetter.com/deerchao/zhengzhe-biaodashi-jiaocheng-se.htm

当然,任何重写url都对要占用cpu的资源的,租用不好的服务器就容易使cpu超负荷,这样你就等着重启吧,不过我个人英姿网络提供的服务器很不错,那公司的业务也很广,做网站(对seo优化),注册域名都有.我一直是用那边的服务器.跑题了,如果有什么问题,请csdn的朋友加QQ:1269017801共同研究.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: