web.config重写未应用否定属性

时间:2019-06-05 17:59:26

标签: asp.net iis url-rewriting web-config

我正在尝试配置网络配置以将所有http通信重定向到https。但我不希望在开发环境(例如localhost)中应用此方法。我尝试过的以下代码,但是在localhost上仍会重写为https。

 <rewrite>
  <rules>
    <rule name="HTTP to HTTPS redirect" stopProcessing="true">
      <match url="(.*)" />
      <conditions>
        <add input="{HTTPS}" pattern="off" ignoreCase="true" />
        <add input="{HTTP_HOST}" matchType="Pattern" pattern="^localhost(:\d+)?$" negate="true" />
        <add input="{HTTP_HOST}" matchType="Pattern" pattern="^127\.0\.0\.1(:\d+)?$" negate="true" />
      </conditions>
      <action type="Redirect" redirectType="Found" url="https://{HTTP_HOST}/{R:1}" />
    </rule>
  </rules>
</rewrite>

0 个答案:

没有答案