我创建了一个规则,它工作正常(从网址中删除www),除了我有多个指向同一源的域。如何才能将此规则应用于特定地址,如果我现在有2个域名abc1.com和abc2.com,如果我输入abc2.com它会重定向到abc1.com
我错过了什么?,谢谢
<rule name="Remove www">
<match url="(.*)" />
<conditions>
<add input="{HTTP_HOST}" pattern="^abc1\.com$" negate="true" />
</conditions>
<action type="Redirect" url="http://abc1.com/{R:1}" />
</rule>
答案 0 :(得分:1)
要删除已绑定的所有网站的www
,您可以使用:
<rule name="Remove www">
<match url=".*" />
<conditions>
<add input="{HTTP_HOST}" pattern="^www\.(.*)$" />
</conditions>
<action type="Redirect" url="http://{C:1}/{R:0}" />
</rule>
它的作用:如果网址以www.
开头,则会将请求重定向到www.
(http://{C:1}/{R:0}
)之后的任何内容。
如果您只想匹配2个网站abc1.com
和abc2.com
,可以使用:
<rule name="Remove www">
<match url=".*" />
<conditions>
<add input="{HTTP_HOST}" pattern="^www\.(abc[1|2]\.com)$" />
</conditions>
<action type="Redirect" url="http://{C:1}/{R:0}" />
</rule>
(仅匹配abc1.com
,将pattern="^www\.(abc[1|2]\.com)$"
替换为pattern="^www\.(abc1\.com)$"
)