UrlRewritingNET实现URL Rewrite

在asp.net中实现URL Rewrite,除了IIS本身带的URL Rewrite Module以外,还有很到其他的解决方案,比如UrlRewritingNET

UrlRewritingNET号称除了文件扩展名Rewrite需要IIS支持以外,其他所有操作都不需要IIS设置,这当然对虚拟主机的网站来说是非常便利的。

下面看看怎么来部署UrlRewritingNET:

1. 首先将下载的dll放置到bin目录

2. 修改Web.config,增加UrlRewritingNET的相关配置如下:



   
       


                 requirePermission="false"
                 type="UrlRewritingNet.Configuration.UrlRewriteSection, UrlRewritingNet.UrlRewriter"/>
   
   
                   contextItemsPrefix="QueryString"
                     defaultProvider="RegEx"
                     xmlns=" >
       
           
                 virtualUrl="^~/category/(.*)"
                 rewriteUrlParameter="ExcludeFromClientQueryString"
                 destinationUrl="~/index.html?category=$1"
                 redirect="Application"
                 ignoreCase="true"/>
           
                 virtualUrl="^~/book/(.*),index.xml"
                 rewriteUrlParameter="ExcludeFromClientQueryString"
                 destinationUrl="~/reader.html?book=$1"
                 redirect="Application"
                 ignoreCase="true"/>
           
                 virtualUrl="^~/api/category/(.*)"
                 rewriteUrlParameter="ExcludeFromClientQueryString"
                 destinationUrl="~/api/Category.ashx?path=$1"
                 ignoreCase="true"/>
           
                 virtualUrl="^~/api/book/(.*)"
                 rewriteUrlParameter="ExcludeFromClientQueryString"
                 destinationUrl="~/api/Book.ashx?path=$1"
                 ignoreCase="true"/>
           
                 virtualUrl="^~/api/meta/(.*)"
                 rewriteUrlParameter="ExcludeFromClientQueryString"
                 destinationUrl="~/api/Meta.ashx?path=$1"
                 ignoreCase="true"/>                
       
   

   
       
           
       
   

3. 嵌入Rewrite规则,在 中。virtualUrl是正则表达式的虚拟URL,destinationUrl是目标的URL。如果表明redirect,则UrlRewritingNET会通过HTTP 301,302重定位,浏览器显示的网址会有所变化

4. 需要注意的是,需要添加Global.asax,UrlRewritingNET才会生效

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值