IIS 7多域主页规范重定向

Bre*_*ent 5 iis-7 canonical-link

在我们的web.config文件中,我们控制了6个不同的国际域.

我们如何使用1条规则执行以下操作:

重定向

  • www.1of6Domains.com/index.htm
  • www.1of6Domains.com/index.html
  • www.1of6Domains.com/default.asp
  • www.1of6Domains.com/default.aspx

  • www.1of6Domains.com

像这样的东西?

<rule name="Canonical Redirect" enabled="true" stopProcessing="true">
    <match url="(.*)/(index.html|index.htm|default.asp|default.aspx)" />
    <conditions logicalGrouping="MatchAll" trackAllCaptures="false" />
    <action type="Redirect" url="{R:1}" />
</rule>
Run Code Online (Sandbox Code Playgroud)

Tom*_*mek 1

我会选择:

<rule name="Canonical Redirect" enabled="true" stopProcessing="true">
    <match url="^index.html$|^index.htm$|^default.asp$|^default.aspx$" />
    <action type="Redirect" url="/" />
</rule>
Run Code Online (Sandbox Code Playgroud)

如果说 www.1of6Domains.com 您的意思是每个域可能不同,那么操作必须是不同的(请记住,它假设非 https 流量): <action type="Redirect" url="http://www.1of6Domains.com" />

编辑: 以下是处理多个域的规则(可以使用一个规则,但需要创建重写映射,不确定您是否想要这种复杂性):

<rule name="Canonical Redirect Non Https">
    <match url="^index.html$|^index.htm$|^default.asp$|^default.aspx$" />
    <action type="Rewrite" url="http://{HTTP_HOST}/" />
    <conditions>
        <add input="{HTTPS}" pattern="^OFF$" />
    </conditions>
</rule>

<rule name="Canonical Redirect Https">
    <match url="^index.html$|^index.htm$|^default.asp$|^default.aspx$" />
    <action type="Rewrite" url="https://{HTTP_HOST}/" />
    <conditions>
        <add input="{HTTPS}" pattern="^ON$" />
    </conditions>
</rule>
Run Code Online (Sandbox Code Playgroud)