[转]URLRewriter使用通配符

网上有很多写这个组件使用的文章,如何使用我就不细述了,有关在 ASP.NET 中执行 URL 重写的文章请看下面链接:
http://www.microsoft.com/china/msdn/library/webservices/asp.net/URLRewriting.mspx?mfr=true

我这里要说的是其中几个很容易被忽视的小细节。

问题场景:
比如实际我并不存在下面三个WEB路径:

http://*******/Tag/Java
http://*******/Tag/Java/
http://*******/Tag/Java/Default.aspx

我想把它重定向到
http://*******/List.aspx?tag=Java

这时候如果我们偷懒,直接用Scott Mitchell 的 URLRewriter 组件,
需要注意的有几个地方:

1、我们需要给IIS设置通配符映射,而且这个映射必须不进行文件是否存在检查。

2、我们在WEB.config 中应该用 httpModules 来定义扑捉用户的请求,而不是 httpHandlers。
因为我们这里要处理 http://*******/Tag/Java 、 http://*******/Tag/Java/ 这样的请求。

3、设置这个信息的 Web.config 应该是根站点目录下的 Web.config,而不是 /Tag/ 目录下的Web.config。

4、要扑捉的URL应该这三种情况都计算,而不是只考虑 http://*******/Tag/Java/Default.aspx 这种情况。
参考配置如下:

  <RewriterConfig>
    <Rules>
      <RewriterRule>
        <LookFor>~/tag/([\w]+)/default\.aspx</LookFor>
        <SendTo>~/List.aspx?Tag=$1</SendTo>
      </RewriterRule>
    </Rules>
    <Rules>
      <RewriterRule>
        <LookFor>~/tag/([\w]+)/</LookFor>
        <SendTo>~/List.aspx?Tag=$1</SendTo>
      </RewriterRule>
    </Rules>
    <Rules>
      <RewriterRule>
        <LookFor>~/tag/([\w]+)</LookFor>
        <SendTo>~/List.aspx?Tag=$1</SendTo>
      </RewriterRule>
    </Rules>
  </RewriterConfig>

转载于:https://www.cnblogs.com/scgw/archive/2007/04/28/731623.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/411933.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[vue] 在vue中使用this应该注意哪些问题?

[vue] 在vue中使用this应该注意哪些问题&#xff1f; vue中使用匿名函数&#xff0c;会出现this指针改变。 解决方法 1.使用箭头函数 2.定义变量绑定this至vue对象个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放弃很容易&#xff0c; 但坚持一定很酷。欢迎大…

oracle逻辑备份和物理备份,Oracle备份与恢复介绍(物理备份与逻辑备份)

3、逻辑备份之EXP/IMP&#xff1a;EXP和IMP是客户端工具程序&#xff0c;它们既可以在客户端使用&#xff0c;也可以在服务端使用。EXPDP和IMPDP是服务端的工具程序&#xff0c;他们只能在ORACLE服务端使用&#xff0c;不能在客户端使用。IMP只适用于EXP导出的文件&#xff0c;…

作业-python常用库类 numpy+pandas

# -*- coding:utf-8 -*-# 1,一个四维的数组,以后两维度为单位,计算它们的和,比如一个1*2*3*4的数组,合并后两列,输出合并后的轴的sum# 实例,输入:[[[[2 7 9 7] [6 6 8 2] [0 0 9 3]][[5 4 1 4][5 7 9 7] [8 4 1 4]] ]] 输出[[59 59]]# import numpy as np# anp.array([[[[2,…

ICE专题:ICE起步

ICE初步 最早开始接触ICE是在2005,3月份,当时一个朋友向另一个正打算研究corba的朋友强烈的推荐了ICE. 参考:http://www.zeroc.com/ 1.什么是ICE? ICE(internet communications engine)是适用于异种环境的面向对象中间件平台。 那么什么是中间件呢? 比较流行的定义是:中间件是…

[vue] 你有使用做过vue与原生app交互吗?说说vue与ap交互的方法

[vue] 你有使用做过vue与原生app交互吗&#xff1f;说说vue与ap交互的方法[vue] 你有使用做过vue与原生app交互吗&#xff1f;说说vue与ap交互的方法 我的做法就是让app在webview把app的方法暴露在window上让前端调用、反之app调用前端的方法也需要前端把方法暴露在window上(w…

[vue] 使用vue写一个tab切换

[vue] 使用vue写一个tab切换 v-for循环&#xff0c;利用下标和v-show显示<div id"app"><ul class"tabs"><li class"li-tab" v-for"(item,index) in tabsParam" click"toggleTabs(index)" :class"index…

subversion安装与配置备忘录

subversion安装与配置备忘录 前两天给公司安subversion,总是出问题,今天总结一下整个过程,以备将来遗忘.下边是我对在网上的一些文章的添加和补充基础上写的. 我是安装windows版本的subversion,所以先把linux下的简介一下: 1.下载httpd-2.0.*.tar.gz(http://www.apache.org)源代…

html5 拖拽上传文件时,屏蔽浏览器默认打开文件

参考&#xff1a; https://www.cnblogs.com/kingsm/p/9849339.html 转载于:https://www.cnblogs.com/cwxwdm/p/10605529.html

[vue] vue中什么是递归组件?举个例子说明下?

[vue] vue中什么是递归组件&#xff1f;举个例子说明下&#xff1f; 组件自己调用自己&#xff0c;场景有用于生成树形结构菜单个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放弃很容易&#xff0c; 但坚持一定很酷。欢迎大家一起讨论 主目录 与歌谣一起通…

oracle仲裁磁盘是一块磁盘吗,基于ASM冗余设计的架构,仲裁磁盘组应该如何去规划?...

ASM使用独特的镜像算法&#xff1a;不镜像磁盘&#xff0c;而是镜像盘区。作为结果&#xff0c;为了在产生故障时提供连续的保护&#xff0c;只需要磁盘组中的空间容量&#xff0c;而不需要预备一个热备(hot spare)磁盘。不建议用户创建不同尺寸的故障组&#xff0c;因为这将会…

如何判断SVG事件对象中的鼠标来源?

在SVG中会经常遇到判断鼠标事件来源的问题&#xff0c;比如&#xff1a;鼠标单击或者双击、滚轮事件等等。这里做一个简单的介绍。 判断鼠标是左键还是右键&#xff1f; 在onclick事件中&#xff0c;if(evt.button0)则为左击&#xff0c;否则为右击 无论单击还是双击evt.detail…

电商 APP 下单页(俗称车2) 业务流程概要设计

购物车是电商APP的一个关键功能点&#xff0c;一般购物车包含 3&#xff5e;4 个页面&#xff0c;分别是&#xff1a; 1.购物车的商品列表页 2.商品下单页 3.订单付款页面 4.订单付款成功页面 由于现有购物车逻辑相对混乱&#xff0c;这里重新整理一下商品下单页的业务流程设计…

[vue] 怎么访问到子组件的实例或者子元素?

[vue] 怎么访问到子组件的实例或者子元素&#xff1f; this.$refs个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放弃很容易&#xff0c; 但坚持一定很酷。欢迎大家一起讨论 主目录 与歌谣一起通关前端面试题

php求数组交集的自定义函数,php数组交集函数

在数学中的交集运算&#xff0c;大家在学习的时候还是比较轻松的。我们在php数组里&#xff0c;可以借助array_intersect()函数对两个数组求交集&#xff0c;最后得到一个想要的交集数据。在正式开始array_intersect()使用前&#xff0c;我们需要先对函数的概念、语法、参数、返…

DNS溢出内测

编译的两个版本/Files/allyesno/DNS.rar 转载于:https://www.cnblogs.com/allyesno/archive/2007/05/28/762460.html

工作374-前端margin:0 auto为什么会失效

1.要给居中的元素一个宽度&#xff0c;否者无效。 2.该元素一定不能浮动&#xff0c;否者无效。 3 在HTML中使用标签&#xff0c;需考虑好整体构架&#xff0c;否者全部元素都会居中的。 4.display&#xff1a;table&#xff0d;cell display:table-cell属性指让标签元素以…

Hessian之简单使用

以下是简单的hessian服务代码&#xff1a; 1.导包 <dependency> <groupId>com.caucho</groupId> <artifactId>hessian</artifactId> <version>4.0.38</version></dependency> 2.编写HessianServerProxyExporter类&#…

aix 7 oracle 10g,在64位aix上安装oracle10g

在aix中安装oracle比linux要方便许多,不需要先设置什么内核参数.设置好oracle用户,组,这些与在linux上安装一样.分配空间,在profile中设置bin目录的路径,oracle_home变量,这些常规的配制就不多说了,大同小异.在aix中,oracle提供了一些工具,可以拿来做安装前的检查工作.工具是va…

为什么我也开博

为什么我也开博&#xff1f;其实很早就想写点东西了&#xff0c;可是一直没有时间&#xff0c;不过&#xff0c;现在想想即使当时写了&#xff0c;还真不知道写点什么。是工作这几个月来的一些经历&#xff1f;还是学习当中的一些小技巧&#xff1f;还是刚刚进入这个行业的困惑…

[vue] 在组件中怎么访问到根实例?

[vue] 在组件中怎么访问到根实例&#xff1f; 通过this.$root个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放弃很容易&#xff0c; 但坚持一定很酷。欢迎大家一起讨论 主目录 与歌谣一起通关前端面试题