84VPS的重启脚本

我的84VPS因为用着站群软件,10多个站同时被推送文章内容,难免出现问题。所以经常会出现nginx 502错误,我必须找到一个方法,让它重启。在网上找了下,有两个方法适合我。

方法一,定时重启。

下面是用crontab每日定时重启LNMP的方法:

1、使用命令 # crontab -e ,进入cron任务表。

2、在# m h dom mon dow command下面,增加一行:

00 */3 * * * /root/lnmp restart //每隔3小时重启一次

或者 0 0 * * * /root/lnmp restart //每天0点重启

(大家最好不要都设置00分,因为有可能这个时间,很多人都在搞这个活动。所以,我的一般都是在17或13这样的奇怪分钟内)

3、按Ctrl+O保存,回车确认,再按Ctrl+X,就可以关闭编辑界面了。

整个定时重启设置完成。

 

方法二,自动重启。

使用lnmp的同学经常会遇到nginx出现502的情况,有些时候无论怎么调整,都不能解决问题,如果在睡觉的时候出现问题,而自己又没有检查,那流量不就白白浪费了吗?

下面我介绍一种方法,完全可以监测到502然后自动重启php-fpm

在SSH中新建一个文件

SSH中输入:

vi 502.sh

在文件中输入如下内容

#!/bin/bash
MY_URL=”http://kilzz.com/”
RESULT=`curl -I $MY_URL|grep “HTTP/1.1 502″`
if [ -n “$RESULT” ]; then
/etc/init.d/php-fpm restart (其中这句,重启的是PHP,我改成/root/lnmp restart,达到重启lnmp 重新启用了前一句,事实证明,完全可用,VPS当机后,重启PHP即可。)
fi

然后保存,其中的网址设置你这台VPS上的任意网页

 

 

赋予777权限

1 chmod 777 /root/502.sh

下一步我们设置上定时

crontab使用方法

 

SSH中输入crontab -e

输入:

1 */1 * * * * /root/502.sh

这样就可以自动检测网页如果是502 就自动重启

 

我使用的是第二种方法,今天开始试验,看看能不能达到我想要的效果。

 

2013年2月9日三十晚上,加入了一行

0 4 * * * /sbin/reboot 每天凌晨四点进行linux系统的重启

因为发现自从搬了XEN后,可能内存和CPU都跟不上了,一下就满。所以不得不每天重启一次,看看效果如何。前面的PHP重启确实可以达到效果的。

更多

Leave a Comment

Your email address will not be published.