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

API正常但Target Group健康检查报403/301,如何改为健康状态

解决负载均衡器目标组健康检查403/301异常的方法

针对403错误的排查与修复

  • 检查健康检查路径的访问权限:确认健康检查使用的路径(如/health)未被API的权限控制(IP白名单、身份验证等)拦截。多数情况是LB健康检查的源IP不在API允许列表内,可临时关闭该路径的权限验证,或把LB健康检查IP段加入API白名单。
  • 验证健康检查请求头配置:部分API会校验特定请求头(如Host、User-Agent),若健康检查请求缺失这些头会被拒绝。在Target Group的健康检查设置中添加对应请求头,比如指定Host为API域名,或自定义User-Agent标识。
  • 排查WAF/防火墙拦截规则:如果API前端部署了WAF或防火墙,检查规则是否误将健康检查请求判定为恶意请求拦截。通过控制台查看拦截日志,针对性放行健康检查的请求特征。

针对301错误的排查与修复

  • 修正健康检查路径的重定向问题:若健康检查路径(如/)会重定向到/index.html或HTTPS地址,而健康检查默认不跟随重定向,就会返回301。直接将健康检查路径改为重定向后的目标路径(如/health),或在Target Group配置中开启“跟随重定向”选项(部分云厂商支持)。
  • 统一协议与端口配置:如果API强制HTTPS访问,但健康检查使用HTTP请求,会触发301重定向。将健康检查协议改为HTTPS,确保与API访问协议一致;同时检查健康检查端口是否匹配API实际监听端口(如API用443端口,健康检查勿用80端口)。
  • 规范URL格式:部分API对URL是否带结尾斜杠有严格要求,比如访问/health会重定向到/health/,若健康检查请求的是不带斜杠的版本,会返回301。调整健康检查路径,与API期望的URL格式保持一致。

通用验证与调整步骤

  • 在目标服务器上模拟健康检查请求:登录API所在服务器,用curl命令模拟LB的健康检查请求,示例:
    curl -I http://localhost:8080/health
    
    若本地请求也返回403/301,说明问题出在API自身配置;若本地请求正常,则是LB到服务器的网络或请求参数配置问题。
  • 调整健康检查阈值:若因网络波动导致偶尔失败,可适当调高“健康阈值”(如从2次改为3次)、降低“不健康阈值”,减少状态误判。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 14:59:52