仅在路径以'/ umbraco /'结尾时重定向到管理子域
问题描述:
我有一种情况,我们的客户端通过负载平衡运行基于Umbraco的网站,并且我们有以下规则将请求重定向到所有这些服务器域“https://www.ourclient.co.uk”。仅在路径以'/ umbraco /'结尾时重定向到管理子域
这对重定向代码:
<!-- Canonicalize all domains to a single domain -->
<rule name="SEO - http canonical redirect" stopProcessing="true" enabled="false">
<match url="(.*)"/>
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{HTTP_HOST}" pattern="^www\.ourclient\.co\.uk" negate="true"/>
<add input="{HTTP_HOST}" pattern="^admin\.ourclient\.co\.uk" negate="true"/>
<add input="{HTTP_HOST}" pattern="^01-live\.ourclient\.co\.uk" negate="true"/>
<add input="{HTTP_HOST}" pattern="^02-live\.ourclient\.co\.uk" negate="true"/>
<add input="{HTTP_HOST}" pattern="^03-live\.ourclient\.co\.uk" negate="true"/>
<add input="{HTTP_HOST}" pattern="^04-live\.ourclient\.co\.uk" negate="true"/>
</conditions>
<action type="Redirect" url="https://www.ourclient.co.uk/{R:1}"/>
</rule>
现在我要实现的是https://www.ourclient.co.uk/umbraco/任何请求重定向到https://admin.ourclient.co.uk/umbraco/,但对我的生活我只是不能得到任何工作。
任何对解决方案的帮助都将非常受欢迎,因为对我的文章所做的任何更正都是如此。
答
只需添加一条新规则即可。
<rules>
<rule name="SEO - http canonical redirect">
... your old stuff ... but exclude the admin.yourclient.com/umbraco (!)
</rule>
<rule name="redirectUmbracoToAdminSite">
<match url="(.*)" />
<conditions>
<add input="{HTTP_HOST}" pattern="^yourclient\.com$" negate="true" />
<add input="{REQUEST_URI}" matchType="Pattern" pattern="^umbraco" ignoreCase="true" negate="false" />
</conditions>
<action type="Redirect" url="http://admin.yourclient\.com/{R:1}" />
</rule>
</rules>