zoukankan      html  css  js  c++  java
  • Linux下自动监测并重启Apache服务脚本

    为了达到一个高可用的基于Apache的网站环境,在Apache由于种种原因自动停止运行之后,想立即恢复网站访问,这就需要有个工具实时监测Apache的运行状态并能够自动重启httpd服务,写了一个简单的监测和重启脚本:
     
    原理:通过服务器本地访问自身Apache服务(与用户访问网站类似),如超过15s没有返回正常的220头代码信息,说明Apache服务已经停止运行了,则立即重启httpd服务。
     
    脚本使用
    方法一:
    1、在Linux服务器上执行vi编辑一个新脚本,并把下面脚本代码复制进去,然后退出并保存(需懂一些简单的linux命令,如不懂可留言求助站长)

    [root@localhost /]# vi /opt/autorshttpd
    #!/bin/bash
    URL="http://127.0.0.1/"
    curlit()
    {
    curl --connect-timeout 15 --max-time 20 --head --silent "$URL" | grep '200'
    }
    doit()
    {
    if ! curlit; then
    /etc/init.d/httpd restart > /dev/null
    fi
    }
    while true; do
    doit > /dev/null
    sleep 10
    done

    2、给脚本赋予可执行权限

    [root@localhost /]# chmod 755 /opt/autorshttpd

    3、执行脚本

    [root@localhost /]# sh /opt/autorshttpd &
    [root@localhost /]# exit

    注:在这里sh命令后面我为什么要加个&符号呢?这是因为我们一般操作服务器都是远程SSH操作的,所以如果不加&符号,那关闭SSH远程界面,此进程也就随之结束了,加上&符号,即使关闭SSH远程也可以让程序在后台运行,别忘了用exit命令退出登陆后,再关闭SSH远程界面哦~
    4、让脚本开机自动运行

    [root@localhost /]# vi /etc/rc.local

    在最后面加上sh /opt/autorshttpd这一行即可。
     
    方法二:
    下载脚步程序:点击下载,上传到Linux服务器的/opt目录下,然后依次执行方法一中的2-4步骤即可。

  • 相关阅读:
    二分专题
    数据结构-图
    Linux文件基本属性(以ls -l输出为例解释)
    shell脚本版素数筛
    Linux whereis,which
    Linux外网代理配置
    Linux三剑客
    Elasticsearch集群搭建(Linux)
    测试之路
    我的另一半
  • 原文地址:https://www.cnblogs.com/nulige/p/7607415.html
Copyright © 2011-2022 走看看