【问题标题】:IIS auto redirect from http to https doesn't work in some casesIIS 从 http 到 https 的自动重定向在某些情况下不起作用
【发布时间】:2018-09-18 15:39:44
【问题描述】:

我正在尝试配置我的网站,因此如果用户以不安全模式访问该页面,他将被自动重定向到 https。

通过使用重写模块:https://blogs.technet.microsoft.com/dawiese/2016/06/07/redirect-from-http-to-https-using-the-iis-url-rewrite-module/

下面是我的代码 sn-p

<rewrite>
      <rules>
        <rule name="HTTP/S to HTTPS Redirect" enabled="true" stopProcessing="true">
        <match url="http://(.*)" />
        <conditions logicalGrouping="MatchAny">
                    <add input="{HTTPS}" pattern="^OFF$" />
        </conditions>
        <action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="SeeOther" />
        </rule>
      </rules>
</rewrite>

它在某些情况下有效。

但在某些情况下,它不起作用

我在客户端上测试的两种情况(Chrome 都适用)。在我的服务器上,Firefox --> 好的,IE --> 不行。

我不知道如何解决这个问题,谁能给一些。

谢谢。

更新。我尝试了许多解决方案,例如 Victor Leontyev 的回答,但都没有奏效。

结果是

【问题讨论】:

    标签: http redirect iis https


    【解决方案1】:

    根据您的屏幕截图。它只对您有用,因为重定向缓存在您的 PC 上。 你的规则不正确。正确的规则应该是这样的:

    <rewrite>
          <rules>
            <rule name="HTTP/S to HTTPS Redirect" enabled="true" stopProcessing="true">
                <match url="(.*)" />
                <conditions logicalGrouping="MatchAny">
                    <add input="{HTTPS}" pattern="^off$" />
                </conditions>
                <action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="SeeOther" />
            </rule>
          </rules>
    </rewrite>
    

    【讨论】:

    • 您好,我尝试了许多与您类似的解决方案,但都不起作用。请检查我上面的更新。
    • 你试过我的解决方案了吗?你是如何启用 https 的?这些选项中的哪一个? imgur.com/a/d1xtI 有时很重要,因为在选项 1 中 IIS 仍然不知道 SSL 已启用
    • 您好,是的。我已经尝试过您的解决方案,我相信它适用于其他情况,但不适用于我的。您可以在问题中看到我的屏幕截图。 (在尝试了您的解决方案后,我更新了我的问题)。而且我可以确保在我的服务器上成功启用 SSL,因为当我使用 https:// 输入 URL 时,网页可以正常工作并且浏览器会注意到连接是安全的。
    • 您使用的是 Cloudflare 之类的代理吗?你是如何启用 https 的?您是在 IIS 级别上这样做的吗?
    猜你喜欢
    • 1970-01-01
    • 2018-04-25
    • 1970-01-01
    • 1970-01-01
    • 2018-05-02
    • 1970-01-01
    • 1970-01-01
    • 2020-06-20
    • 2023-04-03
    相关资源
    最近更新 更多