【问题标题】:How does one find real Host when using Cloudfront?使用 Cloudfront 时如何找到真正的主机?
【发布时间】:2014-04-21 12:51:52
【问题描述】:

在一个看起来很奇怪的选择中,Cloudfront 将 Host 标头设置为您在转发请求时指定的源服务器主机。

http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/RequestAndResponseBehaviorCustomOrigin.html

这是为什么?更重要的是,当使用通配符子域时,我如何知道请求来自哪个子域,什么时候它们都转发到同一个来源?

【问题讨论】:

    标签: amazon-web-services amazon-cloudfront


    【解决方案1】:

    好消息-cloudfront supports host header forwarding now。在the documentation中列出的很深:

    Host [header]: CloudFront sets the value to the domain name of the origin that is associated with the requested object.
    

    大概,您需要做的就是确保在默认缓存行为设置中启用标头转发:

    【讨论】:

    • 第二个链接,到文档,并没有说可以转发 Host 标头,而是将其设置为原始域名?
    • 如果您的自定义源是 CloudFront 源(API 网关端点),这不起作用
    • OP 声明 cloudfront 将标头设置为原始主机,并且链接的文档说的完全相同。这无助于回答问题。
    • 我已确认此方法有效。但是您需要将 cname 域设置为与源主机不同,并且源主机有 dns A/AAAA 记录指向源服务器。 Whitelist Headers 有 Host 头,cloudfront 将使用主机中的源服务器 ip 和 cname 域来分配源服务器。如果您使用 https 协议访问源服务器,则需要对源服务器中的 cname 域进行有效的 tls 认证。(我通过letsencrypt dns验证方法获得了一个。)
    • 是的。但是它似乎不适用于 s3
    猜你喜欢
    • 2011-02-09
    • 1970-01-01
    • 2023-03-23
    • 1970-01-01
    • 2020-12-02
    • 1970-01-01
    • 2019-08-07
    • 1970-01-01
    相关资源
    最近更新 更多