在 IIS 中将一些域重定向到 https,将一些域重定向到 http

redirect some domains to https and some to http in IIS

我使用以下规则将所有请求重定向到 https,但现在我想阻止某些子域的重定向。

我将 test.com 重定向到 https://test.com, sub.test.com to https://sub.test.com 但我不希望 sub2.sub.test.com 被重定向。

 <rule name="https2" enabled="true" stopProcessing="true">
                <match url="(.*)" />
                <conditions>
                    <add input="{HTTPS}" pattern="^OFF$" />
                </conditions>
                <action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" appendQueryString="false" redirectType="Temporary" />
            </rule>

我该怎么办?

谢谢

您可以尝试以下规则:

<rule name="http2" stopProcessing="true">
                <match url="(.*)" />
                <conditions>
                    <add input="{HTTP_HOST}" pattern="^test.com$|^sub.test.com$" />
                    <add input="{HTTPS}" pattern="off" />
                </conditions>
                <action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" />
            </rule>

此规则仅重定向条件设置的域。