首页 > 解决方案 > 具有 Beanstalk 源的 AWS Cloudfront - 如何避免重定向到源

问题描述

在我的一个 Beanstalk 应用程序中,Cloudfront 将用户重定向到原点,而不是缓存。类似于具有多个 S3 源的 AWS CloudFront,或https://github.com/Wolox/tech-guides/blob/master/infrastructure/docs/aws/docs/cloudfront-eb-configuration.md。我看到“最重要的一步是在查询字符串转发和缓存选项中选择转发全部,基于全部缓存。当使用 EB 负载均衡器作为源时,将此选项保留在其无选项上将导致分发重定向请求而不是缓存它们。” 建议,但 Cloudfront 行为页面已更新,我再也找不到相关选项了。

标签: amazon-elastic-beanstalkamazon-cloudfront

解决方案


好的,这很简单 - Cloudfront 必须转发 Host 标头。我很好奇为什么它不是默认的缓存行为。

https://aws.amazon.com/premiumsupport/knowledge-center/configure-cloudfront-to-forward-headers/:在缓存键和源请求下,确认已选择旧缓存设置。如果未选中,则按照上一节中的步骤创建缓存策略。如果选择了 Legacy 缓存设置,则完成以下操作: 对于 Headers,选择 Include the following headers。从添加标题下拉列表中,选择主机。


推荐阅读