Content

Linux监控Nginx服务-关闭就自动重启

image.png

文章摘要

最近,网站多次遭受CC攻击,由于腾讯云轻量服务器本身防御不足,团队将Apache换成Nginx,并启用了Nginx的免费防火墙,但Nginx仍存在被挂机的风险。为解决此问题,团队在宝塔的计划任务中添加了一个shell脚本,定时监控Nginx服务状态,当发现异常时会自动关闭并重启服务,从而保障了服务器的稳定运行。

最近网站经常被人CC攻击,腾讯云的轻量服务器,本身防御不了CC攻击,只好把Apache换成了 Nginx,又启动了Nginx免费防火墙,服务器暂时稳定了一段时间,但Nginx程序运行一段时间后依然还是有被打挂的可能,最后想了个折中的方法,就是在宝塔的计划任务里添加一个shell脚本,定时监控Nginx服务器状态,如果异常关闭就进行重启。

最近网站经常被人CC攻击,腾讯云的轻量服务器,本身防御不了CC攻击,只好把Apache换成了 Nginx,又启动了Nginx免费防火墙,服务器暂时稳定了一段时间,但Nginx程序运行一段时间后依然还是有被打挂的可能,最后想了个折中的方法,就是在宝塔的计划任务里添加一个shell脚本,定时监控Nginx服务器状态,如果异常关闭就进行重启。

image.png

监控Nginx服务代码如下:

 

 

#!/bin/bash
# Linux监控Nginx服务,关闭就自动重启
nginx_procnum=`ps -ef|grep "nginx"|grep -v grep|wc -l`
 
if [ $nginx_procnum -eq 0 ]
then
	echo $(date) "Success,Nginx重启成功!" >> /var/log/nginxmonitor.log
	/etc/init.d/nginx start
else 
	sleep 5
	echo "Nginx正常运行中..."
fi