最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Nginx 502 Bad Gateway 自动重启脚本
时间:2022-06-30 18:51:43 编辑:袖梨 来源:一聚教程网
方法一,利用shell脚本,启动 php 和重启nginx配合linux系统的crontab -e计划任务重启。
新建 php文件 200_ok.php 文件(这个随便,内容也随便只要是想使用curl的访问方式)
代码如下 | 复制代码 |
echo "200"; ?> |
建立一个脚本 vi web_monitor.sh (里面还有重启tomcate 的指令,后来发现使用正常关闭shutdown 有文件后台进程相关,可以直接杀掉进程的方式 ps -ef|grep java)
内容如下:
代码如下 | 复制代码 |
#!/bin/bash #author:Pomelo Lee #website:http://www.111com.net CheckUrl="http://www.111com.net /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
方法二,原理就是用curl获取HTTP头,发现502状态码就执行重启php-fpm的命令。
代码如下 | 复制代码 |
|
方法三,自动重启Lnmp
把下面的代码保存为一个.sh文件,例如restart502.sh(在Windows下的话注意转换成UNIX格式,否则可能会出错。)
代码如下 | 复制代码 |
#!/bin/bash |
获取权限
代码如下 | 复制代码 |
chmod +x /root/restart502.sh添加到crontab定时任务(每八分钟执行一次) crontab -e |
这样就完成了
相关文章
- 《绝区零》伊芙琳培养材料汇总 01-24
- 《无限暖暖》1.2春节兑换码一览 01-24
- 《网上国网》查询阶梯档位方法 01-24
- 《蛋仔派对》神游贺岁盲盒获取方法 01-24
- 《炉石传说》星际联动盗贼卡组玩法介绍 01-24
- 皮革珊瑚属于珊瑚中的 01-24