宇宙主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

欧基零壹微头条IP归属甄别会员请立即修改密码
楼主: berliz

用了大猫的LNMP 在安装一个半月左右 出现502 已经出现三次了

[复制链接]
发表于 2010-10-3 15:23:45 | 显示全部楼层
原帖由 berliz 于 2010-10-3 15:21 发表
0 */1 * * * /root/lnmp restart
貌似这样就可以了

我烂七八糟的命令好多呢。像定时备份数据库,发邮件。定时备份网站,然后FTP。
另外,像晚上高峰期,我设置15分钟重启一次。半夜的时候人少,3个小时重启一次。
所以,我都是按照设置好的时间,分钟,小时,这样排序的。修改的时候,也一目了然。
发表于 2010-10-3 15:25:58 | 显示全部楼层
放到crontab里一分钟执行一次。url和cmd根据自己的改。
原理就是用curl获取HTTP头,发现502状态码就执行重启php-fpm的命令。
总感觉PHP用来作系统管理很脆弱,哪位同学试过了不妨反馈下。需要的话可以继续改进。
  1. #!/usr/bin/php
  2. <?
  3. $url = 'http://www.diahosting.com';
  4. $cmd = '/usr/local/php/sbin/php-fpm restart';

  5. for($i = 0; $i < 5; $i ++){
  6.         $exec = "curl --connect-timeout 3 -I $url 2>/dev/null";
  7.         $res = shell_exec($exec);

  8.         if(stripos($res, '502 Bad Gateway') !== false){
  9.                 shell_exec($cmd);
  10.                 exit();
  11.         }
  12. }
  13. ?>
复制代码
http://www.dounar.com/viewthread.php?tid=19208&page=1#pid235729
 楼主| 发表于 2010-10-3 15:40:10 | 显示全部楼层

回复 7# 的帖子

00 01 * * * /root/lnmp restart
00 02 * * * /root/lnmp restart
这个是24小时制的吗?
发表于 2010-10-3 15:45:58 | 显示全部楼层
在帮 猫 宣传么
 楼主| 发表于 2010-10-3 15:46:58 | 显示全部楼层
貌似我一直都不会用 vi 命令
一输入就有问题 也不能粘贴

底部提示:  
"/tmp/crontab.XXXX6TC3ht" [converted] 0L, 0C

去直接去修改这个文件就可以了把

其次就是12楼 cat哥说的 把这句话放到命令里 每分钟执行一次 完整的应该是这样的吗?
  1. 01 */* * * * /root/lnmp restart
  2. #!/usr/bin/php
  3. <?
  4. $url = 'http://www.diahosting.com';
  5. $cmd = '/usr/local/php/sbin/php-fpm restart';

  6. for($i = 0; $i < 5; $i ++){
  7.         $exec = "curl --connect-timeout 3 -I $url 2>/dev/null";
  8.         $res = shell_exec($exec);

  9.         if(stripos($res, '502 Bad Gateway') !== false){
  10.                 shell_exec($cmd);
  11.                 exit();
  12.         }
  13. }
  14. ?>
复制代码
发表于 2010-10-3 15:47:05 | 显示全部楼层

回复 14# 的帖子

看他的命令.就知道不是用我的安装包了
发表于 2010-10-3 15:47:22 | 显示全部楼层
原帖由 berliz 于 2010-10-3 15:40 发表
00 01 * * * /root/lnmp restart
00 02 * * * /root/lnmp restart
这个是24小时制的吗?

对,24小时制。
发表于 2010-10-3 15:52:46 | 显示全部楼层

回复 15# 的帖子

将代码保存为 502.sh
然后加权限chmod +x  502.sh

最后放到crontab里面,例如:

*/1 * * * * /home/502.sh

就可以每分钟检测一次了.
发表于 2010-10-3 15:56:46 | 显示全部楼层
原帖由 Cat 于 2010-10-3 15:47 发表
看他的命令.就知道不是用我的安装包了

嗯嗯,因为我一开始的时候,用的就是他的。我除了女人外,别的都喜欢旧的。
lnmp的虚拟主机文件,还有目录结构都是一样的。我换来换去,也都是直接打包。如果用了猫侠的,就要改好多文件,我还不会弄,我也是个菜鸟。
 楼主| 发表于 2010-10-3 16:36:17 | 显示全部楼层
我非常确定及肯定 用的cat的包 哈哈~
上面的那个命令 是我瞎拼的

我刚才从启之后 nginx不会从启  手动从启后 论坛还是出现502


]# /usr/local/nginx/sbin/nginx -s reopen
[error]: open() "/usr/local/nginx/nginx.pid" failed (2: No such file or directory)
# /usr/local/nginx/sbin/nginx
# /usr/local/nginx/sbin/nginx -s reopen
# /etc/rc.d/init.d/mysql start
Starting MySQL. ERROR! Manager of pid-file quit without updating file.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|兜哪儿主机交流论坛

GMT+8, 2024-9-20 16:42 , Processed in 0.059829 second(s), 5 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表