AWS Elastic Beanstalk切换至ALB时持续出现Target.FailedHealthChecks错误
Elastic Beanstalk ALB架构HTTPS配置故障排查方案
监听器与证书配置检查
- 确认443监听器已绑定状态正常的ACM证书,证书域名需与访问域名完全匹配(含泛域名或精确域名)
- 检查443监听器的转发规则:是否将请求转发到目标组的80端口(EB实例默认应用端口为80)
- 若需HTTP转HTTPS,确认80监听器配置了重定向规则(目标协议HTTPS,端口443),而非直接转发
目标组健康与转发验证
- 查看目标组的目标状态:若实例显示不健康,检查健康检查路径是否为应用可访问的端点(如
/或/health),协议设为HTTP,端口与实例应用端口一致 - 确认目标组的出入站规则:允许ALB向实例的80端口发起流量,实例向ALB返回响应
安全组与网络配置
- 实例安全组:入站规则需允许来自ALB安全组的80端口流量
- ALB安全组:入站规则允许0.0.0.0/0的80、443端口流量,出站规则允许向实例安全组的80端口发起流量
- 验证VPC路由表:ALB所在子网与实例所在子网的路由表需包含正确的本地路由,确保流量能互通
Python应用与平台配置
- 检查Python应用的绑定地址:必须绑定
0.0.0.0:80,不能仅绑定127.0.0.1(否则ALB无法访问) - 下载EB环境日志(控制台→日志→请求日志),查看nginx日志(
/var/log/nginx/)和应用日志,排查是否有端口占用、应用启动失败或请求被拒绝的错误 - 确认EB平台的代理配置:检查
aws:elasticbeanstalk:environment:proxy配置项,确保代理正确转发请求到应用端口
域名解析验证
- 若使用自定义域名,检查Route 53记录是否正确指向ALB的DNS名称,且DNS缓存已过期(TTL设置不宜过长)
内容的提问来源于stack exchange,提问作者ShivamQmr
相关产品推荐
相关产品推荐

