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

时间:2017-03-25 15:29:46

标签: azure azure-web-sites cloudflare

我在Azure http://example.azurewebsites.net托管了一个网站,我已将其映射到http://example.com域。我也使用CloudFlare CDN。当我使用RequireHttpsAttribute时,http://example.azurewebsites.net会被正确地重定向到https URL。但是,http://example.com会反复重定向到自身,从而导致无限循环。

有什么想法吗?

更新27-3-2017:

我在X-Forwarded-Proto上查看了这个SO question,在UrlRewrite上查看了这个SO question。但他们都没有解决问题。

1 个答案:

答案 0 :(得分:0)

根据article

  

如果您的源服务器上没有SSL证书,或者根本无法使用端口443进行网络流量,那么您需要在Cloudflare仪表板中使用Flexible设置。在服务器上选择没有SSL证书的Full或Strict设置将导致重定向循环

据我所知,默认情况下,Azure App Service已经为您的Web应用启用了HTTPS,其中包含.azurewebsites.net域的通配符证书。 此证书在自定义域中不起作用,如果您要使用HTTPS保护自定义域,则需要上传或购买证书。

我猜,您的网站始终循环的原因是您可能无法在azure中设置自定义域的证书。 我建议您可以设置自定义域SSL,然后重试。

有关如何使用自定义域在azure中启用SSL的更多详细信息,请参阅以下链接: 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