80后的细娃儿

lnmp出现502/lnmpa出现504新解决方案

首先,我们需要在域名根目录建立一个c_php.php文件 内容越少越好,比如下面这个
<?php
echo “zzwsem.net”;
?>

然后建立脚本
此脚本判断原理,如果监控页非200就执行下面命令
vi c_php_restart.sh

脚本内容
#!/bin/sh
wget http://www.zzwsem.net/c_php.php –spider
c_php=$?
if [ $c_php = “1” ];
then
echo “您的vps出现502错误” “已于” $(date +”%y-%m-%d %H:%M:%S”) “执行重启php-cgi” | mail -s “邮件标题” 1388888888@139.com
/etc/init.d/php-fpm restart
/etc/init.d/mysql restart
echo “重启php-cgi完毕”
fi

上面这个是如果发生502错误则自动重启php-cgi和mysql,邮箱可以换成自己的,他会自动发邮件
如果是lnmpa环境则需要采用以下脚本
#!/bin/sh
wget http://www.zzwsem.net/c_php.php –spider
c_php=$?
if [ $c_php = “1” ];
then
echo “您的VPS出现504错误” “已于” $(date +”%y-%m-%d %H:%M:%S”) “执行重启lnmpa” | mail -s “邮件标题” 1388888888@139.com
/etc/init.d/httpd restart
/etc/init.d/mysql restart
echo “重启lnmpa完毕”
fi

此脚本的意思如果非200 则自动重启apache和mysql,也可以自己设置重启什么,其中邮箱可以替换成自己的
注:切记监控页一定要更换成自己的
然后是设定权限
chmod 777 /root/c_php_restart.sh

运行定时程序
crontab -e

输入以下内容每隔一分钟检测一次
*/1 * * * * /root/c_php_restart.sh

脚本完成,欢迎大家测试提意见!!!

点赞