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

无需CloudFront,如何将S3静态网站从HTTP重定向到HTTPS?

跨AWS账户S3静态网站HTTP转HTTPS实现方案

方案一:CloudFront + 跨账户S3权限配置(推荐)

核心是通过配置S3桶权限,允许CloudFront的Origin Access Identity(OAI)访问跨账户S3内容,解决账户隔离的鉴权问题:

  1. 创建CloudFront分发(建议选Route53所在账户,便于证书验证):
    • 源地址填写S3静态网站端点(如example.com.s3-website-us-east-1.amazonaws.com,不要选S3 REST端点)
    • 创建或指定CloudFront OAI,在源设置中勾选「使用Origin Access Identity」
    • 缓存行为配置:查看器协议政策选择「重定向HTTP到HTTPS」
    • 添加自定义域名example.com,关联us-east-1区域的ACM证书(域名由Route53托管时,可直接通过DNS验证证书)
  2. 配置S3桶策略:
    在S3所在账户的桶中添加以下策略,替换OAI_ID和BUCKET_NAME为实际值,允许CloudFront OAI读取桶内内容:
    {
      "Version": "2008-10-17",
      "Id": "PolicyForCloudFrontPrivateContent",
      "Statement": [
        {
          "Sid": "1",
          "Effect": "Allow",
          "Principal": {
            "AWS": "arn:aws:iam::cloudfront:user/CloudFront Origin Access Identity OAI_ID"
          },
          "Action": "s3:GetObject",
          "Resource": "arn:aws:s3:::BUCKET_NAME/*"
        }
      ]
    }
    
  3. 更新Route53记录:将example.com的CNAME记录指向CloudFront分发域名

方案二:跨账户ALB + Route53配置

通过应用负载均衡(ALB)作为中间层,完成HTTPS终止和HTTP重定向:

  1. 在S3所在账户创建公网ALB:
    • 配置两个监听:
      • HTTP监听(80端口):设置重定向规则,将所有请求转发至HTTPS(443端口)
      • HTTPS监听(443端口):关联ACM证书(可在Route53账户申请后共享至S3账户,或直接在S3账户申请并通过DNS验证)
    • 配置目标组:目标类型选「IP」,将S3静态网站端点的IP地址添加至目标组(可通过ping S3网站端点获取IP)
  2. 配置S3桶权限:开启静态网站托管,设置桶策略允许ALB所在VPC的IP范围访问(不推荐设置为公共可读)
  3. 更新Route53记录:将example.com的CNAME记录指向ALB域名

方案三:S3静态网站补充重定向(配合HTTPS入口使用)

S3静态网站仅支持HTTP,该方案用于补充边缘场景的重定向逻辑,需结合上述任意HTTPS入口:

  • 在S3桶的静态网站托管设置中添加重定向规则:
    <RoutingRules>
      <RoutingRule>
        <Condition>
          <HttpErrorCodeReturnedEquals>404</HttpErrorCodeReturnedEquals>
        </Condition>
        <Redirect>
          <Protocol>https</Protocol>
          <HostName>example.com</HostName>
          <ReplaceKeyWith>${key}</ReplaceKeyWith>
        </Redirect>
      </RoutingRule>
    </RoutingRules>
    
    该规则会将S3返回404的请求重定向至HTTPS地址,覆盖主重定向逻辑未覆盖的场景

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 11:42:13