如何将API Gateway连接至EC2实例HTTP端点?Invalid endpoint address报错排查
API Gateway连接EC2实例报"Invalid endpoint address"的解决方案
问题背景
尝试配置API Gateway与无公网IP的EC2实例建立HTTP连接,测试路由时返回500错误,日志提示Execution failed due to configuration error: Invalid endpoint address。已尝试使用VPC Link但问题依旧,EC2端点可通过VPN在Postman正常访问。
核心排查方向与解决步骤
确认VPC Link类型匹配
REST API必须使用REST专用VPC Link(控制台中选择"VPC Link for REST APIs"创建),HTTP API的VPC Link无法兼容REST API的集成配置,这是常见的配置误区。修正集成端点地址格式
使用VPC Link时,API Gateway集成端点需填写EC2的私有IP+端口+完整路径,例如http://10.0.0.5:8080/v1/test:- 不能省略端口(即使是80/443)
- 不能使用公网IP或未在VPC内解析的域名
- 路径需与EC2业务端点的路径完全一致
校验VPC网络连通性
- 确保VPC Link关联的子网与EC2所在子网一致,且子网配置了NAT网关/弹性IP(API Gateway需通过VPC Link访问EC2私有网络)
- 检查VPC Link安全组:允许API Gateway的VPC CIDR访问EC2业务端口
- 检查EC2安全组:允许VPC Link所在子网的CIDR访问对应业务端口
核对API Gateway集成配置
在集成设置页面:- 集成类型选择
VPC Link,并选中正确的VPC Link实例 - 集成端点类型选择
HTTP - 确认HTTP方法、路径覆盖与EC2端点完全匹配
- 集成类型选择
验证方法
完成配置后,通过API Gateway的测试功能重新发起请求,查看日志是否有新的错误提示;同时可在EC2上执行tcpdump抓包,确认是否收到API Gateway的请求,以此判断是配置错误还是网络连通性问题。
内容的提问来源于stack exchange,提问作者WhiteAB
相关产品推荐
相关产品推荐

