文档章节

使用微软URLRewriter实现URL重写

深圳大道
 深圳大道
发布于 2016/12/29 15:22
字数 272
阅读 4
收藏 0
1、下载安装MSDNURLRewriting.msi。

          开源代码http://download.microsoft.com/download/0/4/6/0463611e-a3f9-490d-a08c-877a83b797cf/MSDNURLRewriting.msi,下载下来后编译一下就可以了。编译后得到URLRewriter.dllActionlessForm.dll两个Dll。

   2、在ASP.NET项目的web.config中配置使用。

     在<configuration>下面添加一段代码:

 

<configSections> 

<section name=\"RewriterConfig\" type=\"URLRewriter.Config.RewriterConfigSerializerSectionHandler,URLRewriter\"/>

</configSections>


     

 

在<system.web>下面添加一段代码:

<httpHandlers>
      <add verb="*" path="*.aspx" type="URLRewriter.RewriterFactoryHandler, URLRewriter"/>
</httpHandlers> 
<RewriterConfig>
    <Rules>
      <RewriterRule>
        <LookFor>~/index.html</LookFor>
        <SendTo>~/Index.aspx</SendTo>
      </RewriterRule>
      <RewriterRule>
        <LookFor>~/(/d+)-(.*).html</LookFor>
        <SendTo>~/Products/ProductsList.aspx?id=$1&SelectValue=$2</SendTo>
      </RewriterRule>
      <RewriterRule>
        <LookFor>~/(/d+)/(.*).html</LookFor>
        <SendTo>~/Products/ProductsDetails.aspx?ID=$1&CASNO=$2</SendTo>
      </RewriterRule>
    </Rules>
</RewriterConfig>


 

       其中LookFor是地址栏显示的地址,SendTo是真实的反问地址。当页面带有多个参数的时候,如第一个用$1来表示,第二个用$2来表示,以此类推,而参数于参数中的链接符由\"&\"改为\"&amp;\"。LookFor中的(/d+)这些就是正则表达式的写法了。

       在页面中的链接也就要修改了,比如<a href=\"products/productsList.aspx?id=111&SelectValue=a\">产品列表</a>就需要修改为<a href=\"111-a.html\">产品列表</a>。

本文转载自:http://blog.csdn.net/smartsmile2012/article/details/7899216

共有 人打赏支持
深圳大道
粉丝 3
博文 877
码字总数 0
作品 0
深圳
架构师
私信 提问
重提URL Rewrite(2):使用已有组件进行URL Rewrite

可能已经没有人会使用上一篇文章中的方法进行URL Rewrite了,因为提供URL Rewrite的组件早已铺天盖地了。   ASP.NET级别的URL Rewrite组件的原理很简单,其实只是监听BeginRequest事件,并...

jeffz
2008/01/13
0
0
微软URLRewriter.dll的url重写的简单使用

先添加引用URLRewriter.dll到项目下的bin目录中,微软下载包/Files/Jaylong/MSDNURLRewriting.zip 1.在web.config文件中 节点的下面的配置节点 2.在 节点范围类编写重写规则 ~/web/new/(.[0...

长平狐
2012/08/30
201
0
.net实现URL重写

一 什么是url重写 URL 重写是截取传入 Web 请求并自动将请求重定向到其他 URL 的过程。比如浏览器发来请求 hostname/101.aspx ,服务器自动将这个请求中定向为http://hostname/list.aspx ?id...

晨曦之光
2012/05/16
1K
0
urlrewriter转载

现在大部分的网站和商城都会使用到URL重写,接触到这个,也是因为正在做的电子商务商城。URL重写,是将原有的URL采用另一种规则来显示,使得用户方便访问同时也屏蔽一些信息。   在此说下它...

李永china
2016/06/02
27
0
urlrewriter个人小案例

------------------------------页面(包括两种情况)---------------------------- <%@ page language="java" import="java.util." pageEncoding="UTF-8"%> <%@ taglib uri="http://java.su......

李永china
2016/05/03
4
0

没有更多内容

加载失败,请刷新页面

加载更多

SpringBoot引入第三方jar包或本地jar包的处理方式

在开发过程中有时会用到maven仓库里没有的jar包或者本地的jar包,这时没办法通过pom直接引入,那么该怎么解决呢 一般有两种方法 - 第一种是将本地jar包安装在本地maven库 - 第二种是将本地j...

独钓渔
52分钟前
2
0
五、MyBatis缓存

一、MyBatis缓存介绍 缓存的使用可以明显的加快访问数据速度,提升程序处理性能,生活和工作中,使用缓存的地方很多。在开发过程中,从前端-->后端-->数据库等都涉及到缓存。MyBatis作为数据...

yangjianzhou
今天
2
0
最近研究如何加速UI界面开发,有点感觉了

最近在开发JFinal学院的JBolt开发平台,后端没啥说的,做各种极简使用的封装,开发者上手直接使用。 JBolt开发平台包含常用的用户、角色、权限、字典、全局配置、缓存、增删改查完整模块、电...

山东-小木
今天
3
0
《月亮与六便士》的读后感作文3000字

《月亮与六便士》的读后感作文3000字: 看完英国作家威廉.萨默塞特.毛姆所著《月亮与六便士》(李继宏译),第一疑问就是全书即没提到“月亮”,也没提到“六便士”。那这书名又与内容有什么...

原创小博客
昨天
2
0
微信网页授权获取用户信息(ThinkPHP5)+ 微信发送客服消息(一)

以thinkphp5为实例,创建控制器 class Kf extends Controller { /** * [protected description]微信公众号appid * @var [type] */ protected $appid = "xxxxxxxxxxxxxxx"; /** * [protected......

半缘修道半缘君丶
昨天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部