IIS 7:http->HTTPS干净

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (60)

有没有一种干净的方法可以将所有尝试重定向到一个站点的HTTP://版本到它的HTTPS://等效?

提问于
用户回答回答于

它只是web.config,所以如果更改服务器,不需要记住使用403.4自定义错误页面或其他特殊权限所经历的所有步骤,它就能工作。

<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="HTTP to HTTPS redirect" stopProcessing="true">
          <match url="(.*)" />
            <conditions>
              <add input="{HTTPS}" pattern="off" ignoreCase="true" />
            </conditions>
            <action type="Redirect" redirectType="Found" url="https://{HTTP_HOST}/{R:1}" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>
用户回答回答于

我发现最简单、最干净的解决方案是

  1. 在SSL设置中->需要SSL
  2. 在错误页->on 403.4错误->重定向到htps站点
  3. 在错误页面中->编辑功能设置->为本地请求设置详细错误,为远程请求设置自定义错误页

好处是它不需要额外的代码行,缺点是它会将你重定向到一个绝对的url。

扫码关注云+社区