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

如何配置CloudFront通过多S3源实现不同域名对应环境资源分发?

更优CloudFront多环境资源配置方案

直接复用现有CloudFront分发,通过多源+域名匹配行为实现不同环境的资源路由,比建三个分发更高效:

  • 添加三个S3源到现有分发
    在当前分发的源配置里新增三个源:

    • 源名称设为Dev-S3,源域名填dev-bucket.s3.eu-west-2.amazonaws.com
    • 源名称设为Test-S3,源域名填test-bucket.s3.eu-west-2.amazonaws.com
    • 源名称设为Live-S3,源域名填live-bucket.s3.eu-west-2.amazonaws.com
      按需调整每个源的缓存策略——比如dev环境设短TTL方便调试,live环境用标准缓存提升性能。
  • 补充自定义域名(备用域名)
    在分发的备用域名列表里,新增assets-dev.example.com和assets-test.example.com,保留原有的assets.example.com。注意SSL证书要覆盖这三个域名,用通配符证书*.example.com或者包含三个域名的SAN证书都可以。

  • 配置行为规则实现域名路由
    在分发的行为设置里创建三个行为(优先级高于默认行为):

    1. 路径模式选*,匹配条件设为备用域名=assets-dev.example.com,关联源选Dev-S3
    2. 路径模式选*,匹配条件设为备用域名=assets-test.example.com,关联源选Test-S3
    3. 保留原有行为(或新建),路径模式*,匹配assets.example.com,关联源选Live-S3
      CloudFront会按优先级从上到下匹配,自动把不同子域名的请求转到对应S3桶。
  • 更新DNS记录
    在DNS控制台加两条CNAME记录:

    • assets-dev.example.com 指向 xyz.cloudfront.net
    • assets-test.example.com 指向 xyz.cloudfront.net
      原有的assets.example.com记录保持不变。

对比多分发方案的优势

  • 成本更低:CloudFront按分发数量计费,单分发能省不少费用
  • 管理更省心:所有环境的配置集中在一处,不用来回切换分发调整缓存、证书等
  • 扩展性更强:后续加新环境,只需新增源和行为,不用重新建分发

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 05:03:36