我们有一个为 CORS 访问配置的 s3 存储桶。它前面有一个 CloudFront 实例。这是我观察到的奇怪行为:
URL 和请求 header |响应中的 CORS header
CF + “接受编码” |否
S3 + 接受编码 |是的
CF - '接受编码' |是的
这是预期的吗?如何强制 CF 始终返回 CORS header 作为响应? 感谢您提供任何提示/线索
最佳答案
我发现当您在 CloudFront > 'your distribution' > Origins > 'your origin' > Edit > Origin Custom 中设置 access-control-allow-origin: *
时会出现此问题 header 。为了解决这个问题,我删除了 Origin Custom Header,请看截图:
此外,您需要创建失效以使更改生效,CloudFront >“您的分配”> Invalidations > Create Invalidation。
要使所有资源无效,您只需在字段中传递 /*
或适用于您的用例的任何其他有效正则表达式
关于amazon-web-services - CloudFront + S3 网站的请求 header 包含 'Accept-Encoding' 时缺少 CORS header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48530160/