如何从自定义源的请求中获取 Cloudfront 子域?

Posted

技术标签:

【中文标题】如何从自定义源的请求中获取 Cloudfront 子域?【英文标题】:How to get Cloudfront subdomain from the request on the custom origin? 【发布时间】:2015-08-25 13:04:04 【问题描述】:

如何从我创建的自定义源上的请求中获取 AWS Cloudfront 子域。

唯一接近的标头是 Via 标头,但它不包含任何有用的信息

看起来像:

Via: 1.1 1026589cc7887e7a0dc7827b4example.cloudfront.net (CloudFront)

请注意,1026589cc7887e7a0dc7827b4example 不是我分配给自定义来源的原始子域。

【问题讨论】:

【参考方案1】:

您可以将 CloudFront 配置为通过将 Host 标头传递到源。此处描述:http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/header-caching.html。请注意,在这种情况下,它还将包含在 CloudFront 的缓存键中,因此如果您计划为不同的 Host 标头值提供不同的内容,请使用它。

【讨论】:

谢谢亚历克斯。工作得很好。我们最终转发了所有标题。 这可能不是最好的主意,除非其他标头没有改变 - 你会降低缓存命中率,因为所有转发的标头都会自动包含在缓存键中

以上是关于如何从自定义源的请求中获取 Cloudfront 子域?的主要内容,如果未能解决你的问题,请参考以下文章

使用 Cloudfront 从自定义域 url 中删除 stage

CLOUDFRONT EC2 源错误 CloudFront 试图建立与源的连接 [重复]

Cloudfront如何每次都避免If-Modified-Since标头请求

使用 AWS CloudFront 时,如何向公众隐藏自定义源服务器?

为啥 Core Data 获取请求从自定义 UITableViewCell 返回空?

如何从自定义列表视图中获取选定项目并在 toast 消息中打印?