RequireHttpsAttribute 导致 Azure+CloudFlare 部署无限循环

RequireHttpsAttribute causes infinite loop on Azure+CloudFlare deployment

我在 http://example.azurewebsites.net and I have mapped it to http://example.com domain. I also use CloudFlare CDN. When I use RequireHttpsAttribute, the http://example.azurewebsites.net gets redirected correctly to the https URL. However, the http://example.com 的 Azure 中托管了一个站点,该站点被反复重定向到自身导致无限循环。

有什么想法吗?

2017 年 3 月 27 日更新:

我在 UrlRewrite 上查看了这个 SO question on X-Forwarded-Proto and this SO question。但是都没有解决问题

据此article:

if you do not have a SSL certificate on your origin server, or simply can’t use port 443 for web traffic, then you will need to use the Flexible setting in your Cloudflare dashboard. Selecting either the Full or Strict setting without a SSL certificate at your server will result in a redirect loop

据我所知,默认情况下,Azure 应用服务已经为您的 Web 应用程序启用 HTTPS,并使用 .azurewebsites.net 域的通配符证书。 此证书不适用于自定义域,如果您想使用 HTTPS 保护您的自定义域,您需要上传或购买证书。

我猜,你的网站老是循环的原因可能是你没有在azure中设置自定义域的证书。 我建议您可以设置您的自定义域 SSL 并重试。

更多关于如何在Azure中使用自定义域启用SSL的详细信息,您可以参考link: https://docs.microsoft.com/en-us/azure/app-service-web/web-sites-configure-ssl-certificate https://docs.microsoft.com/en-us/azure/app-service-web/web-sites-purchase-ssl-web-site