[转]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
[转]URLRewriter使用通配符相关推荐
- asp.net用url重写URLReWriter实现任意二级域名 (转)
asp.net用url重写URLReWriter实现任意二级域名 Asp.net 用url重写(URLReWriter)实现任意二级域名 好久没有写技术文章,如果大家看不明白,就多看几篇,汗,或者,在 ...
- ASP.NET“.NET研究”下用URLRewriter重写二级域名
这里要求对域名进行重写,实现http://1234.abc.com/ 到 ~/Defa.aspx?id=1234的重写. 第一:域名 首先域名要支持泛解悉,就是域上海企业网站制作名解悉的主机名为星号* ...
- ASP.NET的地址重写“.NET研究”(URLRewriter)实现原理及代码示例
一.概述 访问者输入:http://wu-jian.cnbolgs.com/default.aspx,实际请求和响应的地址却是:http://www.cnblogs.com/wu-jian/defau ...
- ASP.net的地址重写(URLRewriter)实现原理及代码示例
转载:http://www.cnblogs.com/wu-jian/archive/2011/01/06/1927089.html 一.概述 访问者输入:http://wu-jian.cnbolgs. ...
- MySQL 学习笔记(2)— 通配符/正则表达/运算符
本文继续对 MySQL 中的通配符过滤.正则表达式.运算符进行分类总结. 1. 通配符 LIKE 指示 MySQL,后跟的搜索模式利用通配符匹配而不是直接相等匹配进行比较,其中分为 % 和 _ 通配符 ...
- url 通配符解析成参数
需求:url 参数是通配符,需要把通配符解析成参数并且拼接到 url 中 例如:https://xxx.cn/index.html$a=1$b=2; 解析成 https://xxx.cn/index ...
- shell介绍,命令历史,命令补全和别名 ,通配符, 输入输出重定向
2019独角兽企业重金招聘Python工程师标准>>> shell介绍 shell是一个命令解释器,提供用户和机器之间的交互: 支持特定语法,比如逻辑判断.循环: 每个用户都可以有自 ...
- Java泛型 通配符? extends与super
本文来源:https://i.cnblogs.com/EditPosts.aspx?opt=1 感谢博主.本文仅供参考学习. Java 泛型 关键字说明 ? 通配符类型 <? extends T ...
- Access-Control-Allow-Origin这个header这个头不能设置通配符域名
这个header属性,要么设置为*,即任何域名来源都行,要么就只能设置为一个或多个,确定的域名,不能使用通配符域名 转载于:https://www.cnblogs.com/abcbuzhiming/p ...
最新文章
- CVPR 2022 | 模型难复现不一定是作者的错,最新研究发现模型架构要背锅
- MIT联合波士顿咨询:全球21个行业,对话3000名高管,AI如何重塑商业形态? | 雷报
- 二叉树前序、中序、后序遍历求法
- MVC5+EF6 入门完整教程 总目录
- 没有5年测开经验,还真说不清Python生成器、迭代器、装饰器
- 财子说丨王国斌:相信时间的力量
- VMware安装Windows Server 2003提示Operating System not found
- 安装labelImg(Ubuntu / Linux)
- 图注意力网络GRAPH ATTENTION NETWORKS(gat)浅读
- 基于G6-Editor的流程图编辑器
- Mysql多表联查——经典50题
- PPT里怎么加入边翻页幻灯片边连续播放音乐?
- 干货!我被面试官绝地反杀了,附详细答案
- Python生成声音波形、模拟钢琴音色
- C语言入门知识1(零基础新手适用)
- ios13全选手势_iOS13 (四)双指、三指手势
- POJ 2455 Secret Milking Machine 二分枚举 + 最大流
- C# 科学计数法的转换
- 天天优惠第一个版本于6月9日发布
- 前端小报 - 201902月刊