AWS架构下域名解析异常求助:Domain解析至LoadBalance而非CloudFront
问题描述
我的系统基于WordPress构建,托管在AWS平台,架构为:example.com(域名)→ CloudFront(example.cloudfront.net)→ 负载均衡器(alb.elb.amazonaws.com)→ Web系统。当前系统运行正常,但存在异常:访问example.com时,请求会直接解析到负载均衡器的地址,没有经过CloudFront。
排查与解决步骤
- 检查Route 53解析记录:
确认example.com的A/AAAA记录是指向CloudFront分发域名(example.cloudfront.net)的别名记录,而非直接指向ALB地址。根域名只能用Route 53别名记录关联CloudFront,不能用CNAME。 - 验证CloudFront配置:
- 确认CloudFront分发的「备用域名(CNAME)」已添加
example.com,且ACM证书(必须部署在us-east-1区域)覆盖该域名; - 检查行为设置,确保路径规则(如
/*)的源指向ALB,缓存策略无异常跳转逻辑; - 确认默认根对象配置正确,避免根路径访问触发不必要跳转。
- 确认CloudFront分发的「备用域名(CNAME)」已添加
- 修正WordPress站点配置:
登录WP后台,在「设置→常规」里把「WordPress地址(URL)」和「站点地址(URL)」都改成https://example.com,不要填ALB的地址。同时检查缓存、CDN类插件,确认它们没有强制修改站点URL或跳转规则。 - 清除缓存:
本地执行nslookup example.com或dig example.com确认解析结果是CloudFront的IP;如果不对,清除本地DNS缓存(Windows:ipconfig /flushdns,Mac:sudo dscacheutil -flushcache)。另外用浏览器无痕模式访问,避免旧缓存干扰。 - 检查ALB规则:
登录AWS控制台查看ALB的监听器规则,确认没有强制重定向到ALB域名的规则,这类规则会绕过CloudFront。
内容的提问来源于stack exchange,提问作者th2ngo
相关产品推荐
相关产品推荐

