【问题标题】:RequireHttpsAttribute causes infinite loop on Azure+CloudFlare deploymentRequireHttpsAttribute 导致 Azure+CloudFlare 部署出现无限循环
【发布时间】:2017-03-25 15:29:45
【问题描述】:

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

有什么想法吗?

2017 年 3 月 27 日更新:

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

【问题讨论】:

    标签: azure azure-web-app-service cloudflare


    【解决方案1】:

    据此article

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

    据我所知,默认情况下,Azure 应用服务已经为您的 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

    【讨论】:

    • 我有灵活的,选择“完整”就可以了。这也消除了购买 SSL 证书的需要。谢谢!
    • 仅供参考,这个接受的答案不是这个问题的答案。有known issues with some web server configurations 导致了这种情况。即使在 Azure 中为自定义域安装和配置了合法的 SSL 证书,如果将其设置为灵活,您仍然会在 Cloudflare 中看到重定向循环。我不知道真正的答案是什么,但我知道这个公认的答案不是。
    猜你喜欢
    • 2015-11-14
    • 2021-04-30
    • 1970-01-01
    • 2020-08-27
    • 2021-05-07
    • 2012-08-24
    • 2020-11-16
    • 1970-01-01
    相关资源
    最近更新 更多