zoukankan      html  css  js  c++  java
  • nginx 启动脚本

    #!/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: /etc/nginx/nginx. conf
    # config: /etc/sysconfig/nginx
    # pidfile: /var/run/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/sbin/nginx"
    prog=$(basename $nginx)

    NGINX_CONF_FILE="/etc/nginx/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:" | sed 's/[^*]* --user=([^ ]*).*/1/g' -`
    options=`$nginx -V 2>&1 | grep 'configure arguments:'`
    for opt in $options ; 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 -R $user $value
    fi
    fi
    done
    }


    start () {
    [ -x $nginx ] || exit 5
    [ -f $NGINX_CONF_FILE ] || exit 6
    make_dirs
    echo -n $"Starting $prog: "
    daemon $nginx -c $NGINX_CONF_FILE
    retval=$?
    echo
    [ $retval -eq 0 ] && touch $lockfile
    return $retval
    }
    stop () {
    echo -n $"Stopping $prog: "
    killproc $prog -QUIT
    retval=s?
    echo
    [ $retval -eq 0 ] && rm -f $lockfile
    return $retval
    }
    restart () {
    configtest || return $?
    stop
    sleep 1
    start
    }


    reload () {
    configtest || return $?
    echo -n $"Reloading sprog:"
    killproc $nginx -HUP
    RETVAL=$?
    echo
    }
    force_reload () {
    restart
    }
    configtest () {
    $nginx -t -c $NGINX_CONF_FILE
    }
    rh_status () {
    status $prog
    }
    rh_status_q () {
    rh_status >/dev/null 2>&1
    }


    case "$1" in
    start)
    rh_status_q && exit 0
    $1 ;;
    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

  • 相关阅读:
    .NE 学习概要
    (转)工作之路---记录LZ如何在两年半的时间内升为PM
    XP下Winform背景透明问题
    CSE(Corrupted State Exceptions) 严重异常处理办法
    (转)C#模拟键盘鼠标事件
    (转).net项目技术选型总结
    (转)MSMQ续
    (转)MSMQ(消息队列)
    (转)TCP三次握手
    Socket编程初探
  • 原文地址:https://www.cnblogs.com/bpsanshao/p/11283346.html
Copyright © 2011-2022 走看看