IIS重定向规则异常:仅需重定向指定URL问题排查
解决IIS重定向规则精确匹配问题
我来帮你搞定这个IIS重定向的问题!你现在的规则会同时匹配两个URL,核心原因是原来的正则表达式只限定了开头,没有限定结尾,所以只要URL以Directories/The(IIS默认不区分大小写)开头,不管后面还有什么内容都会被匹配到,自然就把the-hindu也包含进去了。
要实现只重定向www.mydomain/Directories/the,你只需要给匹配规则加上结尾限定符$,让正则表达式精确匹配到这个路径的结尾,这样就不会匹配后面还有内容的the-hindu了。
修改后的完整规则如下:
<rule name="Directories The" stopProcessing="true"> <match url="^Directories/the$" ignoreCase="true" /> <action type="Redirect" url="/" /> </rule>
关键调整说明:
^Directories/the$:^表示字符串开头,$表示字符串结尾,这样就严格匹配Directories/the这个完整路径,不会匹配Directories/the-hindu(因为它的结尾是the-hindu,不是the)。ignoreCase="true":保持默认的不区分大小写匹配,确保不管URL里是The还是the都能被匹配到(如果你的场景需要严格区分大小写,可以把这个属性改成false)。
这样修改后,只有www.mydomain/Directories/the会被重定向到首页,www.mydomain/Directories/the-hindu会正常访问,不会触发重定向。
内容的提问来源于stack exchange,提问作者r.vengadesh
相关产品推荐
相关产品推荐

