Nginx 遇到502 Bad Gateway 自动重启的脚本代码
更新时间:2010年12月20日 11:26:45 作者:
放到crontab里一分钟执行一次。url和cmd根据自己的改。
原理就是用curl获取HTTP头,发现502状态码就执行重启php-fpm的命令。
#!/usr/bin/php
<!--$url = 'https://www.jb51.net';
$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();
}
}
-->
至于crontab,请自行Google搜索或参考下面的文章
https://www.jb51.net/LINUXjishu/19905.html
https://www.jb51.net/LINUXjishu/17374.html
复制代码 代码如下:
#!/usr/bin/php
<!--$url = 'https://www.jb51.net';
$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();
}
}
-->
至于crontab,请自行Google搜索或参考下面的文章
https://www.jb51.net/LINUXjishu/19905.html
https://www.jb51.net/LINUXjishu/17374.html
相关文章
Nginx(PHP/fastcgi)的PATH_INFO问题
PATH_INFO是一个CGI 1.1的标准,经常用来做为传参载体. 比如, 我们可以使用PATH_INFO来代替Rewrite来实现伪静态页面, 另外不少PHP框架也使用PATH_INFO来作为路由载体.2011-08-08Nginx报:Nginx - 504 Gateway Time-out问题解决办法
这篇文章主要给大家介绍了关于Nginx报:Nginx - 504 Gateway Time-out问题的解决办法,一般是由于程序执行时间过长导致响应超时,例如程序需要执行90秒,而nginx最大响应等待时间为30秒,这样就会出现超时,需要的朋友可以参考下2024-01-01nginx-proxy-manager初次登录报错502 bad gateway解决
这篇文章主要给大家介绍了关于nginx-proxy-manager初次登录报错502 bad gateway的解决办法,502 Bad Gateway服务器作为网关或者代理时,为了完成请求访问下一个服务器,但该服务器返回了非法的应答,需要的朋友可以参考下2024-04-04
最新评论