美文网首页linuxLinux小推车
shell nginx自启动脚本

shell nginx自启动脚本

作者: SkTj | 来源:发表于2019-03-04 15:31 被阅读11次

    !/bin/sh

    nginx - this script starts and stops the nginx daemon

    chkconfig: - 85 15

    description: NGINX is an HTTP(S) server, HTTP(S) reverse \

    proxy and IMAP/POP3 proxy server

    processname: nginx

    config: /usr/local/nginx/conf/nginx.conf

    config: /etc/sysconfig/nginx

    pidfile: /usr/local/nginx/logs/nginx.pid

    Source function library.

    . /etc/rc.d/init.d/functions

    Source networking configuration.

    . /etc/sysconfig/network

    Check that networking is up.

    [ "$NETWORKING" = "no" ] && exit 0

    nginx="/usr/local/nginx/sbin/nginx"
    prog=(basenamenginx)

    NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf"

    [ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx

    lockfile=/var/lock/subsys/nginx

    make_dirs() {

    make required directories

    user=$nginx -V 2>&1 | grep "configure arguments:.*--user=" | sed 's/[^*]*--user=\([^ ]*\).*/\1/g' -
    if [ -n "user" ]; then if [ -z "`grepuser /etc/passwd" ]; then useradd -M -s /bin/nologin $user fi options=nginx -V 2>&1 | grep 'configure arguments:'` for opt inoptions; do
    if [ echo $opt | grep '.*-temp-path' ]; then
    value=echo $opt | cut -d "=" -f 2
    if [ ! -d "value" ]; then # echo "creating"value
    mkdir -p value && chown -Ruser $value
    fi
    fi
    done
    fi
    }

    start() {
    [ -x nginx ] || exit 5 [ -fNGINX_CONF_FILE ] || exit 6
    make_dirs
    echo -n "Startingprog: "
    daemon nginx -cNGINX_CONF_FILE
    retval=? echo [retval -eq 0 ] && touch lockfile returnretval
    }

    stop() {
    echo -n "Stoppingprog: "
    killproc prog -QUIT retval=?
    echo
    [ retval -eq 0 ] && rm -flockfile
    return $retval
    }

    restart() {
    configtest || return $?
    stop
    sleep 1
    start
    }

    reload() {
    configtest || return ? echo -n"Reloading prog: " killprocnginx -HUP
    RETVAL=$?
    echo
    }

    force_reload() {
    restart
    }

    configtest() {
    nginx -t -cNGINX_CONF_FILE
    }

    rh_status() {
    status $prog
    }

    rh_status_q() {
    rh_status >/dev/null 2>&1
    }

    case "1" in start) rh_status_q && exit 01
    ;;
    stop)
    rh_status_q || exit 0
    1 ;; restart|configtest)1
    ;;
    reload)
    rh_status_q || exit 7
    1 ;; force-reload) force_reload ;; status) rh_status ;; condrestart|try-restart) rh_status_q || exit 0 ;; *) echo"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
    exit 2
    esac

    相关文章

      网友评论

        本文标题:shell nginx自启动脚本

        本文链接:https://www.haomeiwen.com/subject/agjiuqtx.html