星期三, 2013-08-14 | Author:
LeeAuthor: Lee
Name: lee
Email: service@i5a6.com
Site: https://www.pomelolee.com/About: webgame网页,手机游戏服务端架构和开发者
| JAVA-and-J2EE, linux, php |
4,313 views
Nginx 502 Bad Gateway 自动重启shell脚本,启动 php 和重启nginx
新建 php文件 200_ok.php 文件(这个随便,内容也随便只要是想使用curl的访问方式)
echo "200";
?>
建立一个脚本 vi web_monitor.sh (里面还有重启tomcate 的指令,后来发现使用正常关闭shutdown 有文件后台进程相关,可以直接杀掉进程的方式 ps -ef|grep java)
内容如下:
#!/bin/bash
#author:Pomelo Lee
#website://www.pomelolee.com
CheckUrl="//www.pomelolee.com/200_ok.php"
STATUS_CODE=`curl -o /dev/null -m 10 --connect-timeout 10 -s -w %{http_code} $CheckUrl`
#echo "$CheckURL Status Code:\t$STATUS_CODE"
if [ "$STATUS_CODE" != "200" ]; then
/usr/local/webserver/php/sbin/php-fpm stop
sleep 1
/usr/local/webserver/php/sbin/php-fpm start
sleep 1
pkill -9 nginx
sleep 1
/usr/local/webserver/nginx/sbin/nginx
#sleep 1
#/usr/local/tomcat7/bin/shutdown.sh
#sleep 2
#/usr/local/tomcat7/bin/startup.sh
fi
然后是设定权限:chmod 755 /root/web_monitor.sh
运行定时程序:crontab -e
输入以下内容每隔5分钟检测一次:*/5 * * * * /root/web_monitor.sh
~谢谢打赏~
赏