IIS将HTTP重定向到HTTPS重定向循环

问题描述:

我有一个站点设置使用SSL证书并通过https服务该站点。但是,我无法使URL重写正常工作,以将尝试的连接尝试重定向,以遵循某些规则,最终导致使用特定的URL。IIS将HTTP重定向到HTTPS重定向循环

对于此时安全起见,我只想说的域名:example.com

我所试图做的是以下几点。

例如,可以说我有这些前/ afters:

等。但是,无论我使用哪个示例,我都可以在线查找以执行HTTP到HTTPS重定向,但我留下的IIS只会导致无限循环重定向,从不正常工作。在IIS网站上

绑定如下:

  • 类型:HTTP /主机名:www.example.com /端口:80/IP地址:*
  • 类型:HTTP /主机名:example.com /端口:80/IP地址:*
  • 类型:HTTPS /主机名:www.example.com /端口:443/IP地址:*
+0

您可以从web.config中添加您的规则列表。 –

我用这一个

<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="Found" /> 
    </rule> 
    </rules> 
</rewrite> 
+0

这会产生重定向循环的相同问题。 – atom0s

+0

我现在从生产服务器上复制了这个。你确定你没有其他重写规则吗? –

+0

是的,我测试时唯一的重写规则是这个,它并不能防止循环发生。对这个问题的进一步调查显示,Cloudflare的部分原因在于,我确实设法让它工作。 – atom0s