写一个脚本,判断本机的80端口是否开启着,如果开启着什么都不做,如果发现端口不存在,那么重启一下httpd服务,并发邮件通知。脚本写好后,可以每一分钟执行一次,也可以写一个死循环的脚本,30s检测一次。

#!/bin/bash
#by AIker
mail=aiker@gzedu.ml
while :;doh=`ss -tl | grep http | awk -F ":::" '{print $2}'`if [ -z $h ];then/usr/local/apache/bin/apachectl restart &> /dev/nullecho "http is down and restared" | mail -s "httpd is restart" $mailfisleep 30
done