【问题标题】:URL Rewrite rule for a specific domain特定域的 URL 重写规则
【发布时间】:2020-07-02 20:06:32
【问题描述】:

特定域的 URL 重写规则

如果 url 是 https 并且只有这个域

https://myServer/SomeApplication/

重定向到

https://myServer.mycompany.com/SomeApplication/

以下添加在 iis 10、windows server 2019 中不起作用

    <rule name="httpsRedirect2" enabled="true" stopProcessing="true">
                    <match url="^myServer/(.*)" ignoreCase="true"/>                          
                        <action type="Redirect" url="https://myServer.mycompany.com/SomeApplication/" appendQueryString="false" />
    </rule>

谁能解释我做错了什么?

【问题讨论】:

标签: iis url-rewriting web-config iis-10


【解决方案1】:

规则模式只能获取 URL 字符串作为输入,不包含查询字符串,因此无法正常工作。
以下是有关如何通过重写规则访问 URL 字符串的某些部分的官方说明。
https://docs.microsoft.com/en-us/iis/extensions/url-rewrite-module/url-rewrite-module-configuration-reference#accessing-url-parts-from-a-rewrite-rule
我们可以匹配Rule Condition 部分中的主机名,然后应用Rule Action

        <rule name="Myrule2" enabled="true" stopProcessing="true">
            <match url="(.*)" />
            <conditions>
                <add input="{HTTP_HOST}" pattern="localhost" />
            </conditions>
            <action type="Redirect" url="https://vabqia969vm/" />
        </rule>
    </rules>
</rewrite>

如果问题仍然存在,请随时告诉我。

【讨论】:

    猜你喜欢
    • 2013-06-08
    • 2016-10-17
    • 1970-01-01
    • 1970-01-01
    • 2014-04-06
    • 2016-06-24
    • 2015-10-23
    • 2012-04-27
    • 2017-06-20
    相关资源
    最近更新 更多