AWS API Gateway域名返回403 Forbidden错误但API URL及测试运行正常
修复方案
你遇到的403错误核心原因是带d-前缀的API Gateway自定义域名路径映射规则与API部署阶段不匹配,可按以下步骤逐一排查修复:
- 校验自定义域名路径映射配置
登录AWS控制台进入API Gateway服务,打开「自定义域名」页面找到你的目标域名,查看路径映射规则:- 确认映射路径(你配置的
test)已关联正确的API实例(响应头返回的GXt2RGr8TPEFECT就是你的API ID,和你原生URL的API ID对应即可),且关联的部署阶段为原生URL使用的staging - 路径映射生效规则:如果配置的映射路径为
test,API Gateway会自动将请求路径中的/test前缀替换为对应的阶段名/staging再转发到后端。比如你原生可正常访问的路径是/staging/items,对应自定义域名的访问路径应为d-56789qwert.execute-api.eu-west-2.amazonaws.com/test/items,注意路径大小写完全匹配,不要多加多余斜杠 - 如果你希望直接通过自定义域名根路径访问,可将路径映射的路径字段留空,关联
staging阶段后直接访问d-xxx/items即可
- 确认映射路径(你配置的
- 重新部署API阶段
路径映射配置新增/修改后,必须重新部署对应API的staging阶段,配置才会全局生效 - 校验请求参数
确认你向自定义域名发起的请求方法、请求头、请求体和原生接口测试时的参数完全一致,避免因为参数错误触发拦截
补充说明:自定义域名前缀的
d-是API Gateway为自定义域名分配的默认执行域名标识,和API本身的ID无关,响应头返回的不带d-的API ID属于正常情况,无需对此做调整。
内容的提问来源于stack exchange,提问作者Pablo LION
相关产品推荐
相关产品推荐

