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

CloudFront路径模式问题:访问/maintenance/*报Access Denied的解决方法

问题排查与解决方案

可能的原因及对应修复步骤

1. 源路径配置错误

  • 检查Maintenance行为对应的源路径(Origin Path):如果存储桶内前缀为maintenance/,源路径应设为/maintenance(注意避免多带/少带斜杠)。斜杠错误会导致CDN请求的存储桶路径偏差,比如实际请求<bucket-name>//maintenance/xxx,触发权限拒绝。
  • 验证方法:查看CDN访问日志,对比实际转发到存储桶的请求路径与桶内文件路径是否匹配。

2. 存储桶权限配置问题

  • 确认存储桶的**桶策略(Bucket Policy)**是否允许CDN的源访问身份(如CloudFront的OAC/OAI)读取maintenance/前缀下的所有对象。
  • 示例适配OAC的桶策略片段:
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "cloudfront.amazonaws.com"
      },
      "Action": "s3:GetObject",
      "Resource": "arn:aws:s3:::<bucket-name>/maintenance/*",
      "Condition": {
        "StringEquals": {
          "AWS:SourceArn": "arn:aws:cloudfront::<account-id>:distribution/<distribution-id>"
        }
      }
    }
  ]
}
  • 同时检查存储桶对象的ACL,确保未单独设置拒绝访问权限(建议优先用桶策略统一管控)。

3. CDN行为的路径匹配优先级问题

  • 确认Maintenance行为的**路径模式(Path Pattern)**为/maintenance/*,且该行为优先级高于默认行为。CDN会匹配最具体的路径模式,若默认行为优先级更高,请求会走默认源导致路径不匹配报错。
  • 调整行为顺序:在CDN控制台中将Maintenance行为移至默认行为上方。

4. 缓存与部署延迟问题

  • 执行缓存失效(Invalidation),路径填写/maintenance/*,强制CDN拉取最新配置与内容。
  • 确认CDN配置已部署完成,修改后通常需等待数分钟至十几分钟生效。

5. 路径大小写不匹配问题

  • 检查存储桶内maintenance前缀与CDN配置的路径大小写是否完全一致(对象存储如S3为大小写敏感),路径大小写不符会直接返回403错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 12:35:00