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

如何将AWS S3存储桶映射到子域名?(多站点冗余部署)

如何将AWS S3存储桶映射到子域名(适配双版本站点场景)

没问题,针对你这种主站在自有数据中心、云端版本放S3的双运行场景,我来一步步拆解配置步骤:

1. 创建并正确配置S3存储桶

首先得确保你的S3存储桶名称完全匹配你要使用的子域名,比如你想把云端版本放在cloud.mycompany.com.ar,那存储桶名字就必须是cloud.mycompany.com.ar(S3要求桶名和域名一致才能通过CNAME映射)。

接下来配置存储桶的静态网站托管:

  • 进入S3控制台,找到你的桶,切换到「属性」标签,拉到「静态网站托管」部分
  • 选择「启用」,设置「索引文档」(比如index.html,对应你静态站点的首页)和「错误文档」(可选,比如404.html)
  • 复制页面上显示的「静态网站端点」(比如cloud.mycompany.com.ar.s3-website-sa-east-1.amazonaws.com,注意不同区域后缀不同)

然后配置桶策略允许公开访问(如果你的静态站点是公开可访问的):

  • 切换到「权限」标签,找到「桶策略」,粘贴类似下面的策略(替换成你的桶名):
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": "*",
      "Action": "s3:GetObject",
      "Resource": "arn:aws:s3:::cloud.mycompany.com.ar/*"
    }
  ]
}

另外要确保「阻止公共访问」设置里,相关的选项是关闭的(否则桶策略会失效)。

2. 联系你的ISP配置DNS解析

因为域名由互联网服务商管理,你需要联系他们添加一条CNAME记录:

  • 记录类型选择CNAME
  • 主机记录(子域名)填你想用的前缀,比如cloud(对应cloud.mycompany.com.ar)
  • 记录值填你之前复制的S3静态网站端点(注意不要加http://或https://)

等待DNS生效(通常需要几分钟到几小时,取决于TTL设置)。

3. 验证配置并测试

DNS生效后,直接在浏览器访问你的子域名(比如http://cloud.mycompany.com.ar),检查是否能正常加载S3上的静态站点。如果遇到访问被拒绝的问题,先排查:

  • 桶名是否和子域名完全一致
  • 桶策略是否正确配置,公共访问是否关闭了阻止
  • DNS记录是否已经生效(可以用nslookup或dig命令验证)

额外注意事项(可选但实用)

  • 如果需要HTTPS访问:S3静态网站本身不支持HTTPS,你需要搭配AWS CloudFront分发。创建CloudFront分发时,源指向你的S3静态网站端点,然后配置SSL证书(可以用AWS Certificate Manager免费申请),最后把DNS的CNAME记录指向CloudFront的分发域名即可。
  • 流量区分:确保主站www.mycompany.com.ar的DNS记录不受影响,依然指向你的自有数据中心,子域名单独指向S3(或CloudFront)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.08 19:52:27