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 相关文章推荐
php操作mysql数据库的基本类代码
Feb 25 PHP
php中用memcached实现页面防刷新功能
Aug 19 PHP
PHP开启opcache提升代码性能
Apr 26 PHP
PHP date函数常用时间处理方法
May 11 PHP
php禁用函数设置及查看方法详解
Jul 25 PHP
php+jQuery递归调用POST循环请求示例
Oct 14 PHP
CI框架AR数据库操作常用函数总结
Nov 21 PHP
浅谈PHP安全防护之Web攻击
Jan 03 PHP
在laravel中实现ORM模型使用第二个数据库设置
Oct 24 PHP
php实现根据身份证获取精准年龄
Feb 26 PHP
PHP实现随机发扑克牌
Apr 22 PHP
使用Rancher在K8S上部署高性能PHP应用程序的教程
Jul 10 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
php select,radio和checkbox默认选择的实现方法
2010/05/15 PHP
php中利用post传递字符串重定向的实现代码
2011/04/21 PHP
如何使用PHP批量去除文件UTF8 BOM信息
2013/08/05 PHP
PHP convert_uudecode()函数讲解
2019/02/14 PHP
使用JQuery进行跨域请求
2010/01/25 Javascript
Textarea与懒惰渲染实现代码
2012/01/04 Javascript
快速查找数组中的某个元素并返回下标示例
2013/09/03 Javascript
js 跳出页面的frameset框架示例介绍
2013/12/23 Javascript
js中Math之random,round,ceil,floor的用法总结
2013/12/26 Javascript
js加载读取内容及显示与隐藏div示例
2014/02/13 Javascript
js中string转int把String类型转化成int类型
2014/08/13 Javascript
jquery中页面Ajax方法$.load的功能使用介绍
2014/10/20 Javascript
JS实现可展开折叠层的鼠标拖曳效果
2015/10/09 Javascript
jQuery简单动画变换效果实例分析
2016/07/04 Javascript
JavaScript之filter_动力节点Java学院整理
2017/06/28 Javascript
vue实现记事本功能
2019/06/26 Javascript
JS图片懒加载的优点及实现原理
2020/01/10 Javascript
VUE动态生成word的实现
2020/07/26 Javascript
Vue实现腾讯云点播视频上传功能的实现代码
2020/08/17 Javascript
element-plus一个vue3.xUI框架(element-ui的3.x 版初体验)
2020/12/02 Vue.js
Python实现删除列表中满足一定条件的元素示例
2017/06/12 Python
PyQt5每天必学之布局管理
2018/04/19 Python
Python 20行简单实现有道在线翻译的详解
2019/05/15 Python
python基于celery实现异步任务周期任务定时任务
2019/12/30 Python
Django Serializer HiddenField隐藏字段实例
2020/03/31 Python
基于Python爬取京东双十一商品价格曲线
2020/10/23 Python
澳大利亚拥有最好的家具和家居用品在线目的地:Nestz
2019/02/23 全球购物
银行批评与自我批评
2014/02/10 职场文书
解除劳动合同协议书
2014/09/17 职场文书
党员对照检查材料
2014/09/22 职场文书
校园广播稿100字
2014/10/06 职场文书
承诺函格式模板
2015/01/21 职场文书
小学中队活动总结
2015/05/11 职场文书
会议营销主持词
2015/07/03 职场文书
老人院义工活动感想
2015/08/07 职场文书
Java Shutdown Hook场景使用及源码分析
2021/06/15 Java/Android