我需要在IIS10(Windows Server 2019)中将具有变量哈希码的URL重定向到具有该相同哈希码的另一个URL。
示例:
https://www.example.com/hello/sd54effg1g5s11d5111dwds21fds2f1ffd
需要重定向到:
https://subdomain.example.com/hello/sd54effg1g5s11d5111dwds21fds2f1ffd
此刻,我通常在web.config中使用它:
<rule name="rulename" stopProcessing="true">
<match url="^hello/[a-zA-Z0-9]+$" />
<conditions>
<add input="{HTTP_HOST}" pattern="^(https:\/\/www\.)example.com$" />
</conditions>
<action type="Redirect" url="https://subdomain.{HTTP_HOST}/{R:1}" />
</rule>
答案 0 :(得分:0)
首先,{HTTP_HOST}
与网址中的https部分不匹配。因此,您应该使用^www.example.com$
而不是^(https:\/\/www\.)example.com$
。
此外,您应使用https://subdomain.example.com/{R:1}
而非https://subdomain.{HTTP_HOST}/{R:1}
来满足您的要求。
详细信息,您可以参考以下网址重写规则:
<rule name="rulename" stopProcessing="true">
<match url="^hello/[a-zA-Z0-9]+$" />
<conditions>
<add input="{HTTP_HOST}" pattern="^www.example.com$" />
</conditions>
<action type="Redirect" url="https://subdomain.example.com/{R:0}" />
</rule>