使用脚本实现故障时自动重启Apache
最近不知道为什么博客总是莫名其妙地挂掉,
重启Apache就好了,我也懒得去研究到底是哪里出了问题。
只是每次都需要手工SSH上去重启Apache,有点麻烦。
而且有时候在夜里挂掉,一晚上博客就都不能访问了。
后来终于忍无可忍,写了一段脚本来做这件事,代码如下:
#!/bin/sh
if ( wget --timeout=5 -q --spider http://leonax.net/ )
then
echo "ok"
else
/etc/init.d/httpd restart
echo "httpd restarted"
fi
原理很简单,就是尝试访问一下博客(第三行),
如果有什么问题,就重启Apache(第七行)。
其中wget的参数–spider表示只是访问一下,并不下载内容。
如果你喜欢的话,还可以在else中加一段发邮件的代码,
把Apache的error log直接发到邮件,方便分析,不过我就懒得做了。
然后把这段代码保存为check_apache.sh,添加到crontab中:
*/5 * * * * /var/www/check_apache.sh
其中*/5表示每5分钟运行一下check_apache.sh。
注意打开crontab的时候要使用sudo,因为重启Apache需要sudo权限。
非常实用的一个小功能,给使用Linux的小伙伴们发福利啦~
相关文章
Linux命令之mkdir,cat,touch,vi/vim的详解
这篇文章主要介绍了Linux命令之mkdir,cat,touch,vi/vim的内容,文章内容很详细,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2023-01-01
protobuf简单介绍和ubuntu 16.04环境下安装教程
protobuf是谷歌的开源序列化协议框架,结构类似于XML,JSON这种,显著的特点是二进制的,效率高,主要用于通信协议和数据存储等方面,算是一种结构化数据的表示方法。这篇文章主要介绍了protobuf简单介绍和ubuntu 16.04环境下安装教程,需要的朋友可以参考下2019-06-06


最新评论