我写了一些 shell bash 来检查 apache 是否有错误?我使用curl我的一页,如果head返回200 ok
,似乎apache运行良好,否则,做 service httpd restart
,为了监控脚本,我将一些运行日期和状态写入一些日志(1.txt)。
apache.sh
#!/bin/bash
curl -I http://www.mydomain.com/check.php 2>/dev/null | head -1 | grep -q " 200 OK"
if [ $? -eq 0 ]; then echo "ok $(date)" >> 1.txt; else service httpd restart;echo "restart $(date)" >> 1.txt; fi
crontab
*/6 * * * * /bin/sh /home/username/apache.sh >/dev/null 2>&1
但是昨天,我的apache还是没了,(子进程xxxx还是没有退出,发送了SIGKILL)。
我在 ssh 命令行中尝试过/bin/sh /home/username/apache.sh
,没有写入日志(1.txt 为空),没有错误警告。
问题出在哪里?谢谢。