Skip to content

Instantly share code, notes, and snippets.

@85degree
Forked from vdel26/nginx
Last active August 29, 2015 14:23
Show Gist options
  • Save 85degree/380b5d3350e43f4322d1 to your computer and use it in GitHub Desktop.
Save 85degree/380b5d3350e43f4322d1 to your computer and use it in GitHub Desktop.

Revisions

  1. @vdel26 vdel26 renamed this gist Feb 12, 2014. 1 changed file with 0 additions and 0 deletions.
    File renamed without changes.
  2. @vdel26 vdel26 created this gist Feb 4, 2014.
    129 changes: 129 additions & 0 deletions nginx.sh
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,129 @@
    #!/bin/sh
    #
    # chkconfig: 2345 55 25
    # Description: Nginx init.d script, put in /etc/init.d, chmod +x /etc/init.d/nginx
    # For Debian, run: update-rc.d -f nginx defaults
    # For CentOS, run: chkconfig --add nginx
    #
    ### BEGIN INIT INFO
    # Provides: nginx
    # Required-Start: $all
    # Required-Stop: $all
    # Default-Start: 2 3 4 5
    # Default-Stop: 0 1 6
    # Short-Description: nginx init.d script
    # Description: OpenResty (aka. ngx_openresty) is a full-fledged web application server by bundling the standard Nginx core, lots of 3rd-party Nginx modules, as well as most of their external dependencies.
    ### END INIT INFO
    #

    PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
    DESC="Nginx Daemon"
    NAME=nginx
    PREFIX=/usr/local/openresty/nginx
    DAEMON=$PREFIX/sbin/$NAME
    CONF=$PREFIX/conf/$NAME.conf
    PID=$PREFIX/logs/$NAME.pid
    SCRIPT=/etc/init.d/$NAME

    if [ ! -x "$DAEMON" ] || [ ! -f "$CONF" ]; then
    echo -e "\033[33m $DAEMON has no permission to run. \033[0m"
    echo -e "\033[33m Or $CONF doesn't exist. \033[0m"
    sleep 1
    exit 1
    fi

    do_start() {
    if [ -f $PID ]; then
    echo -e "\033[33m $PID already exists. \033[0m"
    echo -e "\033[33m $DESC is already running or crashed. \033[0m"
    echo -e "\033[32m $DESC Reopening $CONF ... \033[0m"
    $DAEMON -s reopen -c $CONF
    sleep 1
    echo -e "\033[36m $DESC reopened. \033[0m"
    else
    echo -e "\033[32m $DESC Starting $CONF ... \033[0m"
    $DAEMON -c $CONF
    sleep 1
    echo -e "\033[36m $DESC started. \033[0m"
    fi
    }

    do_stop() {
    if [ ! -f $PID ]; then
    echo -e "\033[33m $PID doesn't exist. \033[0m"
    echo -e "\033[33m $DESC isn't running. \033[0m"
    else
    echo -e "\033[32m $DESC Stopping $CONF ... \033[0m"
    $DAEMON -s stop -c $CONF
    sleep 1
    echo -e "\033[36m $DESC stopped. \033[0m"
    fi
    }

    do_reload() {
    if [ ! -f $PID ]; then
    echo -e "\033[33m $PID doesn't exist. \033[0m"
    echo -e "\033[33m $DESC isn't running. \033[0m"
    echo -e "\033[32m $DESC Starting $CONF ... \033[0m"
    $DAEMON -c $CONF
    sleep 1
    echo -e "\033[36m $DESC started. \033[0m"
    else
    echo -e "\033[32m $DESC Reloading $CONF ... \033[0m"
    $DAEMON -s reload -c $CONF
    sleep 1
    echo -e "\033[36m $DESC reloaded. \033[0m"
    fi
    }

    do_quit() {
    if [ ! -f $PID ]; then
    echo -e "\033[33m $PID doesn't exist. \033[0m"
    echo -e "\033[33m $DESC isn't running. \033[0m"
    else
    echo -e "\033[32m $DESC Quitting $CONF ... \033[0m"
    $DAEMON -s quit -c $CONF
    sleep 1
    echo -e "\033[36m $DESC quitted. \033[0m"
    fi
    }

    do_test() {
    echo -e "\033[32m $DESC Testing $CONF ... \033[0m"
    $DAEMON -t -c $CONF
    }

    do_info() {
    $DAEMON -V
    }

    case "$1" in
    start)
    do_start
    ;;
    stop)
    do_stop
    ;;
    reload)
    do_reload
    ;;
    restart)
    do_stop
    do_start
    ;;
    quit)
    do_quit
    ;;
    test)
    do_test
    ;;
    info)
    do_info
    ;;
    *)
    echo "Usage: $SCRIPT {start|stop|reload|restart|quit|test|info}"
    exit 2
    ;;
    esac

    exit 0