文档

WAF连接源站服务器超时

更新时间:
一键部署

问题描述

WAF 日志中HTTP 504状态码突增。

解决方案

  • 原因一:检查所有WAF回源IP段被源站访问控制拦截

排查步骤如下:

1.进入阿里云控制台 Web应用防火墙/日志服务,过滤出状态码为504的日志记录。

2.分析日志,可以看到upstream_status为504,与源站TCP建链5秒超时,且触发了多次重试也没有建联成功。

3.进一步分析日志,从server_addr这个字段可以看到,返回HTTP 504状态码的请求集中在112.xxx.xxx.154 这个回源IP上。

4.初步判断为源站有配置访问控制规则,拦截了这个回源地址的请求。

解决方案:SLB访问控制白名单、ECS实例的安全组规则、防火墙安全策略或Iptables规则放行WAF回源地址段。

  • 原因二:后端ECS性能或源站服务器性能瓶颈

排查步骤如下:

1.排查服务器是否存在CPU高,负载高等问题;

2.排查外网带宽跑满均可能导致访问异常。

解决方案:检查后端ECS性能,解决性能瓶颈问题,如果是整体系统容量不够,可以通过扩容后端ECS 的数量消除问题。

  • 原因三:应用程序性能瓶颈

排查步骤如下:

  1. 处理PHP请求的进程数达到上限,已有的PHP请求处理较慢,新的PHP一直处于等待状态,直至超过Nginx的fastcgi_read_timeout的值,就会出现504 Gateway timeout的错误。
  2. 实际处理动态请求的进程异常,例如php-fpm未启动运行

解决方案:请检查后端ECS Web服务器日志是否有相关错误,Web服务是否正常运行,确认Web访问逻辑是否有问题。

  • 原因四:公网链路质量问题
  1. 测试其他ISP运营商的客户端是否有相同问题,如果仅仅是某个固定运营商网络的客户端访问有问题,一般是运营商封堵导致。

解决方案:抓包确认是否有封堵行为,如果有,请联系运营商解决该问题。

适用范围

  • Web应用防火墙
  • 本页导读