HTTP请求被记录为HTTPS,不会重定向

时间:2018-06-18 22:29:36

标签: asp.net .net iis url-rewriting iis-8.5

我长期以来一直在努力解决这个问题。我真的希望有人可以帮我解决这个问题。

  • Windows Server 2012 R2
  • IIS 8.5

使用URL重写:

<rewrite>
    <rules>
        <rule name="Redirect to HTTPS" stopProcessing="true">
                <match url="(.*)" />
                <conditions>
                    <add input="{HTTPS}" pattern="^OFF$" />
                </conditions>
            <action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="Permanent" />
        </rule>
     </rules>
</rewrite>

非常标准的东西。这就是它变得奇怪的地方:

上述规则已在父网站上实施。重定向在父网站上的工作时间最多,但是有一些页面(并且它是一致的)它将只是。将。不。将它们重定向到HTTPS。

该父站点还有几个子站点(Web服务,api,其他等)。在子站点上,NONE页面将重定向,即使看起来好像在父站点上放置的规则也被所有子站点继承。

好的,这就是它变得更加奇怪的地方:

使用this excellent tutorial,我设置了失败的请求跟踪。然后,我立即尝试通过在不在Web服务器上的浏览器中加载页面来加载其中一个不重定向的页面。例如:

HTTP://v10staging.mydomain.com/some-sub-page

注意:我请求了HTTP而不是HTTPS。然后,我看了一下失败的日志,这就是显示的内容:

enter image description here

虽然我请求了HTTP,但它实际上已经记录为HTTPS。如果我错了,请告诉我,但看起来服务器认为请求已经在https,这就是为什么它没有被重定向。

什么。是。展望。上?我该如何解决?

0 个答案:

没有答案