4行代码,Web服务器(Apache/Nginx)挂了自动重启

有时候,我们的Web服务器如Apache、Nginx 可能因为某些原因退出了,这时候如果没有及时发现,就会影响服务,
所以搞个监控,是很有必要滴

#!/bin/sh
HTTPD_NUM=`ps aux | grep -P "(bin/httpd)|(./httpd)" | grep -v "vim" | grep -v "grep" | wc -l`
if [ ${HTTPD_NUM} -eq 0 ]; then
    /usr/local/apache/bin/apachectl restart
fi

如果是Nginx

!/bin/sh
NGINX_NUM=`ps aux | grep -P "nginx" | grep -v "vim" | grep -v "grep" | wc -l`
if [ ${NGINX_NUM} -eq 0 ]; then
    /usr/local/nginx/sbin/nginx
fi
crontab -e

* * * * * /bin/bash /data/cron/apache_restart.sh > /dev/null 2>&1
* * * * * /bin/bash /data/cron/nginx_restart.sh > /dev/null 2>&1

加入crontab,每分钟检查一次
原理很简单,就是判断是否有httpd进程,如果木有了,执行重启操作!

Related post

最新文章

Return Top