我需要做的是将所有流量从URL1重定向到URL2,除非请求URI是/ certain-directory。除此之外,我还需要将任何有关URL1 /某个目录的内容重定向到URL2 /某个目录。
以下是我提出的2条规则,我正在进行故障排除。
<rule name="Redirect to certain-directory" stopProcessing="true">
<match url="(.*)" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_URI}" pattern="^/certain-directory$" />
<add input="{HTTP_HOST}" pattern="^URL1$" />
</conditions>
<action type="Redirect" url="http://URL2/{R:1}" appendQueryString="true" redirectType="Permanent" />
</rule>
<rule name="Redirect from certain-directory" stopProcessing="false">
<match url="(.*)" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_URI}" pattern="^/$" negate="true" />
<add input="{REQUEST_URI}" pattern="^/certain-directory$" negate="true" />
<add input="{HTTP_HOST}" pattern="^URL2$" />
</conditions>
<action type="Redirect" url="http://URL1/{R:1}" appendQueryString="true" redirectType="Permanent" />
</rule>
答案 0 :(得分:0)
事实证明我刚刚结束了request_uri的错误。而不是
<add input="{REQUEST_URI}" pattern="^/certain-directory$" negate="true" />
我只是需要
<add input="{REQUEST_URI}" pattern="^/certain-directory" negate="true" />