1

我正在尝试将我的网站从https://localhost(但使用 ip 写入,例如https://10.0.7.8)重定向到另一个 https 位置,例如https://mysite.com

我目前的配置是:

<rewrite>
  <rules>
    <rule name="Rewrite to mysite.com" enabled="true" stopProcessing="true">
      <match url="(.*)" />
      <action type="Redirect" url="https://mysite.com/{R:0}" redirectType="Permanent" />
      <conditions logicalGrouping="MatchAll">
        <add input="{HTTP_HOST}" pattern="https://10.0.7.8*" />
      </conditions>
     </rule>
  </rules>
</rewrite>

当我访问https://10.0.7.8它时它不会去https://mysite.com,它会保持打开状态https://10.0.7.8

知道我在做什么错吗?

4

1 回答 1

2

您需要https在 2 个条件下从 ip 中拆分部分:

<rewrite>
  <rules>
    <rule name="Rewrite to mysite.com" enabled="true" stopProcessing="true">
      <match url="(.*)" />
      <conditions logicalGrouping="MatchAll">
        <add input="{HTTP_HOST}" pattern="^10\.0\.7\.8$" />
        <add input="{HTTPS}" pattern="^ON$" />
      </conditions>
      <action type="Redirect" url="https://mysite.com/{R:0}" redirectType="Permanent" />
     </rule>
  </rules>
</rewrite>

此外,10.0.7.8需要写入10\.0\.7\.8,因为.它是一个特殊字符,需要转义。

于 2013-10-25T15:30:08.293 回答