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

API Gateway V2自定义域名后根路径访问失败问题排查

API Gateway V2 根路径访问404问题排查与解决

问题核心

你当前的/{proxy+}路由仅匹配包含至少一个子路径段的请求(如/account/profile),但/account属于单级路径,无法被该路由匹配。尝试的$default路由未生效,通常是路由优先级、集成配置或自定义域名映射的问题。

具体修复方案

1. 添加精确匹配/account的路由

直接创建一条精确匹配路由,确保/account请求能触发Lambda:

  • 进入API Gateway控制台的「路由」页面,点击「创建路由」
  • 路由类型选「精确」,路由键输入/account
  • 关联与/{proxy+}相同的Lambda集成
  • 保存后重新部署API到目标阶段

2. 启用尾部斜杠自动处理(可选)

若希望/account和/account/都能被/{proxy+}匹配,可开启尾部斜杠重定向:

  • 进入API Gateway的「设置」页面,找到「尾部斜杠行为」
  • 选择「将无尾部斜杠的路径视为包含尾部斜杠」或「重定向到带尾部斜杠的路径」
  • 保存并重新部署,此时/account会被识别为/account/,符合/{proxy+}的匹配规则(需确保Lambda能处理带尾部斜杠的路径)

3. 检查自定义域名映射配置

确认自定义域名的API映射指向正确的API和阶段:

  • 进入「自定义域名」页面,查看映射条目
  • 验证映射的API是当前配置的实例,阶段为已部署状态(如prod)
  • 若映射路径前缀设为/account,则API的根路由(/)需配置对应集成,此时api.mydomain.com/account对应API的/路径

4. 验证Lambda代理集成的路径处理

如果使用Lambda代理集成,检查代码是否正确处理单级路径:

  • 请求/account时,event.path的值为/account
  • 确保Lambda代码没有仅处理带子路径的path,需覆盖单级路径的逻辑

5. 部署与日志验证

  • 所有配置修改后必须重新部署API,否则变更不生效
  • 使用API Gateway控制台的「测试」功能,直接测试/account路径,确认是否触发Lambda
  • 查看CloudWatch中的API Gateway访问日志,确认请求的路由匹配结果,定位是否有路由未命中的情况

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 09:57:26