Nginx启动、关闭、重新加载脚本

#! /bin/sh
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: starts the nginx web server

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC="nginx daemon"
NAME=nginx
DAEMON=/usr/local/nginx/sbin/$NAME
CONFIGFILE=/usr/local/nginx/conf/$NAME.conf
PIDFILE=/usr/local/nginx/logs/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME

set -e
[ -x "$DAEMON" ] || exit 0

do_start() {
 $DAEMON -c $CONFIGFILE || echo -n "nginx already running"
}

do_stop() {
 kill -INT `cat $PIDFILE` || echo -n "nginx not running"
}

do_reload() {
 kill -HUP `cat $PIDFILE` || echo -n "nginx can't reload"
}

case "$1" in
 start)
 echo -n "Starting $DESC: $NAME"
 do_start
 echo "."
 ;;
 stop)
 echo -n "Stopping $DESC: $NAME"
 do_stop
 echo "."
 ;;
 reload|graceful)
 echo -n "Reloading $DESC configuration..."
 do_reload
 echo "."
 ;;
 restart)
 echo -n "Restarting $DESC: $NAME"
 do_stop
 do_start
 echo "."
 ;;
 *)
 echo "Usage: $SCRIPTNAME {start|stop|reload|restart}" >&2
 exit 3
 ;;
esac

exit 0

  备注:着红色的地方要根据实际路径进行修改,将上述脚本命名为nginx,保存到/etc/init.d目录下。尝试/etc/init.d/nginx start 命令,会报“权限不足”的错误,执行chmod +x /etc/init.d/nginx 给其赋执行权限。

    可以用一下方式来执行此脚本:

     /etc/init.d/nginx start

     /etc/init.d/nginx sttop

    /etc/init.d/nginx reload

    /etc/init.d/nginx restart

   如果想让此脚本开机自启动  还需在脚本头部家 chkconfig xx  xx等注释(具体需要参考chkconfig命令用法),让它支持chckconfig  然后执行/sbin/chkconfig nginx on 命令。同时,可以sudo /sbin/chkconfig --list nginx  来查看效果。

posted @ 2014-10-10 09:49  李克华  阅读(16340)  评论(0编辑  收藏  举报