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

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

 

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

官方相关文档:Rule Pattern

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


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

设置匹配URL规则

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

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

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

测试模式界面

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

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




原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/98675.html

(0)
上一篇 2021年8月21日
下一篇 2021年8月21日

相关推荐

发表回复

登录后才能评论