文档首页/ Web应用防火墙 WAF/ 故障排除/ 网站接入异常排查/ 通过独享模式接入WAF后,出现502/400报错,如何处理?
更新时间:2026-09-04 GMT+08:00
分享

通过独享模式接入WAF后,出现502/400报错,如何处理?

问题描述

网站通过独享模式接入WAF后,访问网站时出现502 Bad Gateway400 Bad Request错误。这通常意味着WAF独享引擎与源站服务器之间的通信存在问题,需要按照以下步骤逐项排查。

排查思路

表1 表1 排查思路

序号

可能原因

处理措施

1

原因一:独享引擎实例状态异常

检查独享引擎实例运行状态和健康检查结果

2

原因二:回源IP被源站安全策略拦截

检查源站安全组、防火墙是否放行独享引擎回源IP

3

原因三:ELB监听器配置错误

检查ELB监听器协议、端口与WAF防护端口的匹配关系

4

原因四:安全组规则未放行回源IP

在源站安全组中添加放行独享引擎回源IP的入方向规则

5

原因五:源站服务状态异常

检查源站服务器服务是否正常运行、性能是否充足

原因一:独享引擎实例状态异常

  1. 登录Web应用防火墙控制台
  2. 在左侧导航栏,选择资产管理 > WAF独享引擎
  3. 查看目标独享引擎实例的“运行状态”列:

    • 如果状态为“运行中”,说明独享引擎实例运行正常,请继续排查原因二:回源IP被源站安全策略拦截
    • 如果状态为“异常”,说明独享引擎实例不可用,请执行以下操作:
      1. 查看独享引擎实例的CPU、内存使用率是否过高。
      2. 确认独享引擎版本是否为最新版本(2023年4月及之后)。
      3. 如仍无法解决,请提交工单寻求帮助

原因二:回源IP被源站安全策略拦截

网站以独享模式接入WAF后,所有请求经独享引擎实例返回源站,源站看到的所有源IP都会变成独享引擎实例的回源IP(即独享引擎实例对应的子网IP)。源站服务器上的安全软件(如安全组、防火墙、CFW等)可能将回源IP误判为恶意IP并拦截。如果WAF回源IP被屏蔽,WAF的请求将无法得到源站的正常响应,可能导致网站打不开或打开极其缓慢。

您可以参考以下步骤,确认回源IP是否被源站安全策略拦截。

  1. 登录Web应用防火墙控制台
  2. 在左侧导航栏,选择资产管理 > WAF独享引擎
  3. “WAF独享引擎”页面,单击目标独享引擎“IP地址”列的IP,复制独享引擎对应的子网IP地址。
  4. 检查源站服务器的以下安全策略是否放行了该回源IP:

    • ECS安全组:确认入方向规则中已放行独享引擎回源IP的全部端口。具体操作请参见放行独享引擎回源IP
    • 云防火墙(CFW):如果源站使用了CFW,需在CFW上放行WAF回源IP。
    • 主机安全软件:如HSS等,确认未将回源IP加入黑名单。

  1. 使用Telnet测试连通性:telnet 源站IP 业务端口

    如果端口无法直接连通但网站业务仍可正常访问,说明安全组规则配置正确(直接访问被拦截,仅允许WAF回源)。

原因三:ELB监听器配置错误

  1. 进入弹性负载均衡列表页面
  2. 单击WAF独享引擎绑定的目标负载均衡器名称,进入详情页。
  3. “监听器”页签,检查以下配置:

    • 前端协议/端口:确认与业务实际访问的协议和端口一致。
    • 后端服务器组:确认WAF独享引擎实例已添加到后端服务器组,且“健康检查”结果为“正常”
    • 后端协议/端口:当后端服务器组的后端协议是HTTP或HTTPS时,确认该后端协议与组内的后端服务器端口与配置的WAF防护域名的访问协议和端口一致。
    • 分配策略类型:如果选择“加权轮询算法”,请确认已关闭会话保持。开启会话保持可能导致请求固定转发到某个引擎实例,当该实例故障时请求会出错。

  4. 如果ELB健康检查异常,可先临时关闭健康检查进行测试,确认是否为健康检查配置问题。

原因四:安全组规则未放行回源IP

  1. 登录ECS控制台
  2. 在ECS实例详情页面,选择“安全组”页签。
  3. 检查入方向规则中是否已添加放行独享引擎回源IP的规则:

    • 策略:允许
    • 协议端口:自定义TCP,端口填写为空或1-65535(放行全部端口)
    • 源地址:逐一添加所有WAF独享引擎的子网IP地址

  4. 如果未配置,请参照放行独享引擎回源IP完成配置。

原因五:源站服务状态异常

  1. 检查源站服务是否正常运行

    • 登录源站服务器,确认Web服务(如Nginx、Apache、Tomcat等)已启动且正常运行。
    • 检查源站服务监听端口与WAF配置的"源站端口"是否一致。

  2. 检查源站服务器性能

    • 查看CPU、内存、磁盘使用率是否过高。
    • 查看网络带宽是否充足。如果源站带宽不足,可能导致响应超时返回504。

  3. 直接测试源站连通性

    • 创建一台与独享WAF实例在同一VPC下的ECS,直接向源站发送请求:

      curl -kv -H "Host: 添加到WAF的防护对象" http://源站IP:源站端口

    • 如果返回码为200,说明源站服务正常,问题可能出在WAF或ELB配置上。
    • 如果返回码非200,说明源站服务本身存在问题,请排查源站Web服务配置。

  4. 检查是否触发WAF熔断保护

    • 当源站出现大量502/504错误或请求积压时,WAF会触发熔断保护,返回类似 {"status": "System is busy, please try again later."} 的响应。
    • 独享模式可在WAF控制台调整"熔断保护"中的"宕机保护"和"连接保护"配置值。

  5. 检查HTTP/HTTPS协议配置是否匹配

    • 如果"对外协议"与"源站协议"不一致,WAF会进行协议转换。例如对外协议为HTTPS、源站协议为HTTP时,WAF会先解密HTTPS请求再以HTTP转发到源站。
    • 如果源站配置了HTTP强制跳转HTTPS,而WAF只配置了HTTPS→HTTP的转发,会导致重定向死循环。请配置两条转发规则:HTTP→HTTP 和 HTTPS→HTTPS。

提交工单

如果上述方法均不能解决您的疑问,请提交工单寻求更多帮助。

相关文档