您的位置:首页 > 其它

详解IIS中URL重写工具的匹配URL-规则模式(rule patterns)

2016-02-18 15:47 567 查看
转自:http://shiyousan.com/post/635659901987610088

rule patterns规则模式在IIS的URL重写模块中,是较为关键的设置。只有规则模式的URL匹配成功时,其他的规则才能起到作用。规则模式的匹配URL设置主要是匹配URL中的路径部分,一般使用正则表达式和通配符对URL路径进行匹配,下面会仔细的说明。

 

首先要了解规则模式是匹配URL中的哪一部分,假设当前有网站的URL地址为http://shiyousan.com/Home/Index?page=1,那么规则模式匹配的部分就是Home/Index,域名的主机部分和参数部分如果要匹配,则需要在规则条件(Rule conditions)那设置,并且要使用到服务器变量,具体可以查看这篇文章:详解IIS中URL重写工具的规则条件(Rule
conditions)

官方相关文档:Rule Pattern

PS:这里非常重要,一定要注意匹配URL的只是路径部分,是不包含主机域名部分!

下面说明如何设置匹配URL规则的各个属性:



如上图所示,匹配方式我们可以选择与模式匹配,与模式不匹配这两种。从字面上很容易理解这两个选项的意思,主要还是根据下面的匹配语法和模式相关联。

接下来选择要使用的匹配语法,一共有三种:正则表达式,通配符,完全匹配,这里我们选择的是使用正则表达式。

最后设置匹配规则模式的语法,这里我设置的正则表达式是 ^(.*?)/Home/(Index)$ 。点击右边的测试模式,我们可以测试正则匹配的是否正确,输入URL:http://shiyousan.com/Home/Index,最终正确的显示匹配,如下图所示:



我们使用正则一共可以捕获到3组反向引用的内容,具体关于{R:0}/{R:1}/{R:2}和向后引用/反向引用,可以看这篇文章:详解IIS中的重写工具下关于操作重定向URL中的{R:N}与{C:N}

到这里就对rule patterns进行了全部的说明,以后在IIS上使用URL重写工具就会容易的多。

作者:十有三
出处:http://shiyousan.com/post/635659901987610088
欢迎转载本文,本文版权归作者所有,转载请声明出处或保留此段声明。^_^请尊重他人劳动成果,共建美好的网络环境。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  urlrewrite url重定向