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

AWS ALB DNS无法访问:ECS健康检查正常但curl无返回

排查ECS+ALB健康检查正常但curl无响应的问题

核心排查步骤

  • 核对请求路径与健康检查配置
    确认curl使用的路径和ALB健康检查的路径完全一致,比如健康检查配置的是/health,就直接执行:

    curl http://<DNS_ALB>/health
    

    同时检查Django的ALLOWED_HOSTS设置,测试阶段可临时设为*,避免因主机头不匹配返回400错误。建议加-v参数查看详细响应:

    curl -v http://<DNS_ALB>/<healthcheck endpoint>
    
  • 验证ECS任务端口映射与目标组配置
    检查ECS任务定义:容器端口8000是否正确映射,若用动态端口,目标组需配置为转发到容器端口8000(ECS会自动注册主机端口),而非固定主机端口。

  • 查看应用日志定位请求状态
    到CloudWatch Logs中查看Django应用的日志,确认是否收到ALB转发的curl请求:

    • 若无请求记录:说明ALB流量未到达容器,检查目标组注册状态、VPC路由表
    • 有请求但返回错误:根据日志提示排查(如路由不存在、权限限制等)
  • 检查ALB监听规则
    确认ALB的80端口监听规则是否正确关联到ECS任务的目标组,无其他规则(如路径匹配错误)拦截请求。

  • VPC内直接测试容器可用性
    在同VPC的EC2实例上,curl容器私有IP+8000端口+健康检查路径,确认应用本身能正常响应。若此步骤失败,问题出在容器内应用配置,与ALB无关。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 00:52:03