共计 916 个字符,预计需要花费 3 分钟才能阅读完成。
之前呢,我们分享了一篇文章叫做《宝塔Bt控制面板 监控Mysql异常停止并重启》,在服务器进行设置之后发现确实搞定了mysql崩溃的问题,想崩溃随便崩,崩了就重启。解决了这个问题之后呢,随之而来的是nginx的崩溃,好家伙,看样子还得整个nginx的监控脚本。
索性分享一篇来自csdn的郑州聚匠网络科技的文章。
内容如下,干货满满:
我的是宝塔面板
直接上代码
nginx_procnum=`ps -ef|grep "nginx"|grep -v grep|wc -l`
if [ $nginx_procnum -eq 0 ]
then
echo "start nginx..."
/etc/init.d/nginx start
else
echo "no cmd"
fi
然后添加定时任务;每分钟执行一次,如下图所示:
全部的 redis,nginx,php,mysqld 判断并重启;
phpfpm_procnum=`ps -ef|grep "php-fpm"|grep -v grep|wc -l`
nginx_procnum=`ps -ef|grep "nginx"|grep -v grep|wc -l`
mysql_procnum=`ps -ef|grep "mysqld"|grep -v grep|wc -l`
redis_procnum=`ps -ef|grep "redis"|grep -v grep|wc -l`
if [ $phpfpm_procnum -eq 0 ]
then
echo "start php-fpm..."
/etc/init.d/php-fpm-71 start
elif [ $nginx_procnum -eq 0 ]
then
echo "start nginx..."
/etc/init.d/nginx start
elif [ $mysql_procnum -eq 0 ]
then
echo "start mysql..."
/etc/init.d/mysql start
elif [ $redis_procnum -eq 0 ]
then
echo "start redis..."
/etc/init.d/redis start
else
echo "no cmd"
fi
按上面的步骤再来一遍就可以了,这里呢,还是提醒一下大家,尽量屏蔽掉国外的ip,你会发现服务器会少受很多欺负。