更多请支持:www.Bkjia.com
最近nginx经常502,解决502最好的办法就是重启php-fpm。
手动去重启还是比较麻烦的事情,最好的就是扔到shell里去。
vim restart-php-fpm.sh
#!/bin/sh SERVICE='php-fpm' #if ps ax | grep -v grep | grep $SERVICE > /dev/null if netstat -anp | grep 9000 > /dev/null then echo $SERVICE service running, everything is fine else echo $SERVICE is not running service php-fpm start fi本地虚拟机测试了一下,可行,扔到服务器上去,结果发现502的时候并未php-fpm没有进程,而是php-fpm僵死。
vim restart-php-fpm.sh
#!/bin/bash MY_URL=http://www.webyang.net RESULT='curl -I $MY_URL | grep HTTP/1.1 502\' if [ -n $RESULT ]; then #如果502则会执行这里的内容,随便加或改 killall -9 php-cgi service php-fpm restart fi这样的话,还是手动的,如果需要自动,自己添加到crontab里去。
或者写一个shell死循环,隔一个时间段去执行即可。