CloudFront自定义域名配置异常:无法访问自定义域名
排查自定义域名无法访问CloudFront的实用步骤
1. 验证Route 53 A记录配置
- 确认A记录的别名目标是正确的CloudFront分发域名,而非S3桶域名
- 用终端命令检查解析结果,确认指向CloudFront边缘节点:
正常结果应显示CloudFront的IP段,而非S3的IP地址nslookup your-custom-domain.com dig your-custom-domain.com
2. 检查CloudFront分发的备用域名配置
- 确保CloudFront分发的**备用域名(CNAMEs)**字段已准确添加你的自定义域名,且和SSL证书中的域名完全匹配(注意
www.example.com和example.com是两个不同域名) - 确认CloudFront分发状态为已部署(Deployed)——新配置的分发需要15-20分钟完成全球部署,未部署完成时自定义域名无法生效
3. 校验SSL证书配置细节
- 用于CloudFront的ACM证书必须在us-east-1(弗吉尼亚北部)区域申请,CloudFront仅支持该区域的证书
- 确认证书状态为已颁发(Issued),且证书的备用域名列表包含你的自定义域名(泛域名需匹配子域名规则,比如
*.example.com可覆盖www.example.com) - 检查CloudFront分发的自定义SSL证书选项是否选中了正确的证书,而非默认的CloudFront证书
4. 核对CloudFront缓存行为与原点设置
- 确保缓存行为的Viewer Protocol Policy设置为
Redirect HTTP to HTTPS或HTTPS Only(如果强制HTTPS访问) - 确认原点域名是CloudFront自动生成的S3桶域名(如
your-bucket.s3.amazonaws.com),而非S3静态网站的自定义域名
5. 排查DNS传播与本地缓存问题
- 域名解析存在全球传播延迟,可切换不同网络(如手机4G)测试,排除本地DNS缓存影响
- 清除本地DNS缓存:
- Windows:
ipconfig /flushdns - macOS/Linux:
sudo dscacheutil -flushcache或sudo systemd-resolve --flush-caches
- Windows:
6. 排除本地环境干扰
- 使用浏览器无痕模式或不同浏览器访问,排除本地缓存问题
- 确认本地防火墙、杀毒软件或网络提供商未拦截443端口的HTTPS请求
内容的提问来源于stack exchange,提问作者Pulkit Soni
相关产品推荐
相关产品推荐

