如何创建删除子域IIS重定向规则?

时间:2019-07-02 16:47:55

标签: iis web-config

我正在尝试创建一个重定向规则,该规则将删除子域并转到主域。

因此,如果我有一个网址:http://somesubdomain.maindomain.com/somepage.aspx,则应重定向到:http://maindomain.com/somepage.aspx

当前提供的是404。此重写规则有什么问题?

        <system.webServer>
    <rewrite>
        <rules>
            <rule name="Remove Sub Domain" stopProcessing="true">                   
                <match url="(http://|https://)?(www\.)?([^\.]+\.)(.*)" />
                <conditions logicalGrouping="MatchAll">
                    <add input="{URL}" pattern="myaccount" negate="true" />
                    <add input="{URL}" pattern="my-account" negate="true" />
                </conditions>                   
                <action type="Redirect" url="{R:4}" appendQueryString="false" />
            </rule>
        </rules>
    </rewrite>
</system.webServer>

1 个答案:

答案 0 :(得分:1)

您可以使用以下url重写规则:

 <rule name="Remove Sub Domain" stopProcessing="true">                   
            <match url="(.*)" />
            <conditions logicalGrouping="MatchAll">
                    <add input="{REQUEST_URI}" pattern="(.*)" />
                    <add input="{HTTP_HOST}" pattern="(.*)\.(.*)\.(.*)" />
            </conditions>                   
            <action type="Redirect" url="http://{C:2}.{C:3}{REQUEST_URI}" appendQueryString="false" />
        </rule>

enter image description here