nginx自动启动脚本|nginx自动启动脚本几段代码

更新时间:2019-08-05    来源:nginx    手机版     字体:

【www.bbyears.com--nginx】

ginx源码安装完后不能使用/etc/init.d/XX方式重启等,所以写了个启动脚本。
原理还是利用了nginx自己的启动脚本,只是进行了简单的整合。

把以下脚本保存为nginx文件放入/etc/init.d/nginx

然后可以通过
/etc/init.d/nginx start 命令启动nginx
/etc/init.d/nginx stop 命令停止nginx
/etc/init.d/nginx restart 命令重启nginx

开机自动启动nginx,

如果需要开机启动服务,保存好 /etc/init.d/nginx文件后,

执行以下命令:

chkconfig --add ningx

chkconfig --level nginx 2345 on

PS:ubuntu下的版本

 代码如下

#! /bin/sh
# Author: WJ-Cody
# Reproduced with express authorization from its contributors
set -e
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
NAME=nginx
DAEMON=/usr/local/nginx/sbin/nginx
SCRIPTNAME=/etc/init.d/nginx
PID=/home/weblogs/nginx.pid
CONF=/usr/local/nginx/conf/nginx.conf


# If the daemon file is not found, terminate the script.
test -x $DAEMON || exit 0

d_start() {
  $DAEMON || echo -n "nginx already running"
}

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

d_reload() {
  kill -HUP `cat $PID` || echo -n "nginx could not reload"
}

case "$1" in
  start)
    echo -n "Starting $NAME"
    d_start
    echo "."
  ;;
  stop)
    echo -n "Stopping $NAME"
    d_stop
    echo "."
  ;;
  reload)
    echo -n "Reloading configuration..."
    d_reload
    echo "reloaded."
  ;;
  restart)
  echo -n "Restarting $NAME"
  d_stop
# Sleep for two seconds before starting again, this should give the
# Nginx daemon some time to perform a graceful stop.
  sleep 2
  d_start
  echo "."
  ;;
  *)
  echo "Usage: $SCRIPTNAME {start|stop|restart|reload}" >&2
  exit 3
  ;;
esac
exit 0

 

2. 修改nginx脚本的执行权限

 代码如下

# sudo chmod +x /etc/init.d/nginx

3. 设置nginx开机执行

 代码如下

# sudo chkconfig --list
# sudo chkconfig nginx defaults
# sudo chkconfig --list
结果如下:
nginx    0:off   1:off   2:on    3:on    4:on    5:on    6:off

4. 脚本测试

启动:# sudo /etc/init.d/nginx start
停止:# sudo /etc/init.d/nginx stop
重启:# sudo /etc/init.d/nginx restart

本文来源:http://www.bbyears.com/caozuoxitong/60321.html

猜你感兴趣