You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS CloudFront配置AllViewer策略访问S3源站提示NoSuchBucket错误

错误产生原因

AllViewer托管源站请求策略的默认规则是转发所有客户端请求头到源站,其中包含Host请求头:

  1. 你访问CloudFront时用的自定义域名是www.one.top,客户端发起请求时携带的Host头值为www.one.top
  2. 切换为AllViewer策略后,该Host头被原封不动转发给S3源站
  3. S3服务默认会把请求的Host头值作为要访问的桶名,你没有名为www.one.top的S3桶,因此返回NoSuchBucket错误。

报错信息中返回的<BucketName>www.one.top</BucketName>和你配置的实际S3桶名test-1109不一致,就是Host头被错误转发的直接证明。

之前使用的UserAgentRefererHeaders策略不会转发客户端的Host头到源站,CloudFront会自动用你配置的S3源站域名test-1109.s3.ap-southeast-1.amazonaws.com填充Host头,因此请求可以正常命中目标桶。

排查解决方法

  • 方案1(推荐):创建自定义源站请求策略。复制AllViewer托管策略的配置,仅调整Host头的转发规则为「不转发」或者「覆盖为源站域名」,其他转发规则保留不变,替换当前使用的AllViewer策略即可。
  • 方案2:回退到原有托管策略。如果业务不需要转发所有客户端请求头到S3源站,直接切换回UserAgentRefererHeaders托管策略即可恢复正常访问。
  • 方案3:适配Host头转发规则。如果业务确实需要转发原始Host头到源站,需要先将S3桶开启静态网站托管,将自定义域名www.one.top绑定到该S3桶,同步调整S3桶的访问权限和跨域配置即可。

内容的提问来源于stack exchange,提问作者aslan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 18:36:03