首页 >编程 >正文

Nginx实现崩溃重启

前言

最近我的服务总是被CC攻击导致了nginx崩溃,服务不可用

我写了个检测nginx服务状态并检查崩溃重启的脚本

#nginx service
 
#判断是否为root运行
if [ $(id -u) != "0" ]
 
then
 
echo "请使用root运行此脚本"
 
exit 1
 
fi
 
netstat -anop | grep 0.0.0.0:80

#判断80端口服务是否在运行
if [ $? -ne 1 ]
 
then
 
exit
 
fi
 
#输出重启日志
echo $(date +%T%n%F)" Restart nginx Services " >> nginx.log
 
#/usr/local/nginx/sbin/nginx -s quit
#启动nginx服务
/usr/local/nginx/sbin/nginx

写完先赋个权限

chmod 755 nginx_restart.sh

然后添加定时任务(定时检查)

 crontab  -e
*/5 * * * * sh /usr/local/nginx/sbin/nginx_restart.sh

每5分钟检查nginx服务是否正常

crontab  -l

crontab -l 检查下定时任务是否正常

当然这个只适用于普通方式部署的nginx对于docker部署的,需要自行调整代码

网友评论

验证码 换一张
取 消
暂无评论...
三日内热门评论文章
关键词
为您推荐
  • 相关阅读
  • 业界资讯
  • 手机通讯
  • 电脑办公
  • 新奇数码
  • 软件游戏
  • 科学探索