PHP-Fpm导致Nginx502错误

最近遇到一个奇怪的问题,站点没有做过什么改动,但是访问的时候Nginx报502错误。

登录到服务器,通过top命令一查,很多个php-fpm进程,占用了非常多的CPU资源。

第一个我想到的是,看Nginx conf配置对了没,检查了下一点问题都没有。

接着看了下php fastcgi的配置也没有错误。

继续往下排查,去看了下Nginx的访问Log,发现有问题了。有两个ip在不断的访问服务器,10ms左右。这个就比较坑了。

马上在Nginx.conf中加入 deny xxx.xx.xx.xx屏蔽了这两个ip,以为完事大吉了。但是并没有生效,这个其实到现在我还是不理解为什么。忘有人能解释下。

既然这样通过Nginx的屏蔽措施无法成功,那我职能是通过iptable的方式去屏蔽了。

iptables-t filter -I INPUT -p tcp -s 192.168.1.1 --dport 80 -j DROP

完了记得重启Nginx&PHP。搞定。