A5下载站:努力做内容最丰富最安全的下载站! 网站地图最新更新下载排行专题软件发布

热门软件

地铁跑酷

冒险迷岛

全民迷宫

连连消大作战

小河狸创客

阿里健康医鹿

支付宝app

番薯小说

MOMO陌陌

虾米音乐app

位置导航:A5下载 > 源码技巧 > 父类数据

PHP脚本监控Nginx 502错误并自动重启php-fpm

时间:2015-05-14 11:46来源:a5源码作者:zhao浏览:33
这篇文章主要介绍了PHP脚本监控Nginx 502错误并自动重启php-fpm,本文直接给出实现代码,然后放到cron中执行,需要的朋友可以参考下……

最近服务器时不时出现Nginx 502 Bad Gateway,如果在电脑旁边还好,要是半夜或者出去了,怎么办?

没关系,写个脚本检测服务状态,发现异常,自动重启。

自动重启脚本:

<?php

$url = 'http://blog.rebill.info';

$cmd = '/usr/local/php/sbin/php-fpm restart';

for($i = 0; $i < 5; $i ++){

$exec = "curl connect-timeout 3 -I $url 2>/dev/null";

$res = shell_exec($exec);

if(stripos($res, '502 Bad Gateway') !== false){

shell_exec($cmd);

exit();

}

}

原理就是用curl获取HTTP头,发现502状态码就执行重启php-fpm的命令。

url和cmd根据实际情况改成自己的。然后放到crontab里一分钟执行一次。

*/1 * * * * /usr/bin/php /root/crontab/nginx502.php

大功告成!