如何为AWS API Gateway配置Route53自定义域名?遇访问故障求助
API Gateway自定义域名配置失败的修复方案
核心问题
你设置的CNAME记录值不符合DNS规则——CNAME只能指向纯域名,不能包含https://协议前缀或/dev路径后缀。错误的记录值导致DNS解析失败,出现"无法访问此网站"和ping找不到主机的问题。
正确配置步骤
1. 在API Gateway中绑定自定义域名
- 登录AWS API Gateway控制台,选中你的目标API
- 进入「自定义域名」页面,点击「创建自定义域名」:
- 域名填写:
api.abcd.ci.example.io - 选择对应域名的有效ACM证书(你已完成DNS验证,证书应处于生效状态)
- 端点类型按需选择(边缘优化型会自动关联CloudFront,区域型同API所在区域)
- 域名填写:
- 创建完成后,复制控制台给出的目标域名(格式类似
d-xxxxxx.execute-api.us-west-2.amazonaws.com或CloudFront域名xxxxxx.cloudfront.net)
2. 配置基础路径映射
- 在自定义域名详情页,找到「基础路径映射」模块,点击「创建」:
- 路径填
/ - 选择你的目标API,阶段选择
dev
此设置会将api.abcd.ci.example.io的请求自动映射到原API的/dev阶段
- 路径填
3. 修正Route53记录
- 进入Route53托管区域
abcd.ci.example.io - 删除原错误的CNAME记录
- 创建新CNAME记录:
- 记录名称:
api(或完整填写api.abcd.ci.example.io) - 值粘贴步骤1中复制的目标域名(纯域名,无协议、无路径)
- TTL保持默认即可
- 记录名称:
4. 验证生效
- 等待5-10分钟让DNS记录 propagate,用
nslookup api.abcd.ci.example.io验证解析是否正常 - 访问
https://api.abcd.ci.example.io/v1/healthcheck测试API可用性
额外检查点
- ACM证书区域匹配:边缘优化端点要求证书在
us-east-1区域;区域端点要求证书与API Gateway同区域(us-west-2) - 确认API的
dev阶段无IP限制、认证配置等阻止访问的规则
内容的提问来源于stack exchange,提问作者LP13
相关产品推荐
相关产品推荐

