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


Posted in PHP onMay 13, 2015

最近服务器时不时出现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

大功告成!
PHP 相关文章推荐
mysql中存储过程、函数的一些问题
Feb 14 PHP
PHP程序61条面向对象分析设计的经验小结
Nov 12 PHP
PHP--用万网的接口实现域名查询功能
Dec 13 PHP
具有时效性的php加密解密函数代码
Jun 19 PHP
PHP中include与require使用方法区别详解
Oct 19 PHP
PHP的变量类型和作用域详解
Mar 12 PHP
set_exception_handler函数在ThinkPHP中的用法
Oct 31 PHP
PHP 开发者该知道的 5 个 Composer 小技巧
Feb 03 PHP
php中文字符串截取多种方法汇总
Oct 06 PHP
php对xml文件的增删改查操作实现方法分析
May 19 PHP
php实现和c#一致的DES加密解密实例
Jul 24 PHP
Yii2.0框架模型添加/修改/删除数据操作示例
Jul 18 PHP
简单解决新浪SAE无法上传文件的问题
May 13 #PHP
PHP file_get_contents函数读取远程数据超时的解决方法
May 13 #PHP
正确的PHP匹配UTF-8中文的正则表达式
May 13 #PHP
如何在HTML 中嵌入 PHP 代码
May 13 #PHP
PHP性能分析工具XHProf安装使用教程
May 13 #PHP
PHP CURL 多线程操作代码实例
May 13 #PHP
百度工程师讲PHP函数的实现原理及性能分析(三)
May 13 #PHP
You might like
mysql,mysqli,PDO的各自不同介绍
2012/09/19 PHP
PHP写的加密函数,支持私人密钥(详细介绍)
2013/06/09 PHP
twig模板常用语句实例小结
2016/02/04 PHP
php转换上传word文件为PDF的方法【基于COM组件】
2019/06/10 PHP
php 使用 __call实现重载功能示例
2019/11/18 PHP
jquery中使用ajax获取远程页面信息
2011/11/13 Javascript
JavaScript避免内存泄露及内存管理技巧
2014/09/05 Javascript
node.js超时timeout详解
2014/11/26 Javascript
js中for in语句的用法讲解
2015/04/24 Javascript
JQuery记住用户名密码实现下次自动登录功能
2015/04/27 Javascript
JS获取下拉框显示值和判断单选按钮的方法
2015/07/09 Javascript
Angular.js中定时器循环的3种方法总结
2017/04/27 Javascript
解决使用bootstrap的dropdown部件时报错:error:Bootstrap dropdown require Popper.js问题
2018/08/30 Javascript
webpack+vue+express(hot)热启动调试简单配置方法
2018/09/19 Javascript
vue router带参数页面刷新或回退参数消失的解决方法
2019/02/27 Javascript
JavaScript实现五子棋游戏的方法详解
2019/07/08 Javascript
nodemon实现Typescript项目热更新的示例代码
2019/11/19 Javascript
Python Sqlite3以字典形式返回查询结果的实现方法
2016/10/03 Python
R语言 vs Python对比:数据分析哪家强?
2017/11/17 Python
python自动化生成IOS的图标
2018/11/13 Python
Python3 使用pillow库生成随机验证码
2019/08/26 Python
python 实现兔子生兔子示例
2019/11/21 Python
python学生信息管理系统实现代码
2019/12/17 Python
python如何处理程序无法打开
2020/06/16 Python
基于python实现判断字符串是否数字算法
2020/07/10 Python
英国假发网站:Hothair
2018/02/23 全球购物
比利时家具购买网站:Home24
2019/01/03 全球购物
物业管理计划书
2014/01/10 职场文书
单位实习证明怎么写
2014/01/17 职场文书
幼儿教师工作感言
2014/02/14 职场文书
抽样调查项目计划书
2014/04/24 职场文书
促销活动总结范文
2014/04/30 职场文书
开服装店计划书
2014/08/15 职场文书
医院党的群众路线教育实践活动学习心得体会
2014/10/30 职场文书
高性能跳频抗干扰宽带自组网电台
2022/02/18 无线电
nginx访问报403错误的几种情况详解
2022/07/23 Servers