同子网内AWS Lambda调用ALB配置问题求助
AWS ALB访问404问题的排查与缺失配置
目标组配置(核心缺失项)
- 必须创建对应目标组,将对方提供的API端点(IP地址或域名)注册为目标组内的成员。ALB的监听器规则必须明确转发到这个目标组,仅设置路径规则无法完成流量转发。
- 检查目标组健康检查:健康检查的路径、端口要和对方API的实际状态匹配,只有健康状态的目标才会被ALB选中转发。若所有目标都显示不健康,ALB会直接返回404。
- 目标组协议需与监听器匹配:比如监听器用HTTP(80端口),目标组也要配置为HTTP,端口对应对方API的服务端口(不一定是80,需确认对方实际端口)。
监听器规则验证
- 核对路径匹配规则:ALB路径匹配区分大小写,且规则优先级会影响匹配顺序,确保你访问的URL路径完全符合规则配置(比如规则设为
/api/*,访问路径别写成/Api/*)。 - 确认规则关联目标组:检查监听器规则的转发目标是否为你创建的、包含对方端点的目标组,避免误关联空目标组或其他无关目标组。
网络连通性检查
- ALB所在VPC需能访问对方端点:若对方端点在公网,确保ALB的子网已配置NAT网关实现互联网访问;若对方在私有网络,需打通VPC对等连接或路由。
- 安全组出站规则:ALB的安全组除了允许80/443入站,还要开放到对方API服务端口的出站权限(比如对方用8080端口,就需添加出站规则允许访问8080)。
- 测试端点可达性:在ALB子网内的EC2实例上,用
curl或telnet测试对方端点,确认网络层面能正常连通。
DNS访问说明
- 完全可以使用ALB的DNS名称访问,这是AWS ALB的标准访问方式,404错误和DNS无关,是前面的配置环节有疏漏。
- 确认访问URL格式正确:比如
http://your-alb-dns-name/rule-path,注意路径的斜杠匹配(比如规则是/test,访问时别多打尾部斜杠/test/,除非对方API要求)。
额外排查点
- 若对方API要求HTTPS访问:需为ALB的443端口监听器绑定有效SSL证书,同时目标组协议改为HTTPS,端口对应对方的443端口。
- 开启ALB访问日志:通过日志可以查看请求是否命中规则、目标组的返回状态等细节,快速定位问题根源。
内容的提问来源于stack exchange,提问作者JakeHova
相关产品推荐
相关产品推荐

