在安装完nginx后,开启nginx需要执行sudo /usr/local/nginx/sbin/nginx
命令,这显然十分不方便。如果能像apache一样,直接通过脚本进行管理就方便多了。执行以下方法将nginx配置成service
服务,则会简化操作指令。
- 执行:
vim /etc/init.d/nginx
将下面的脚本文件复制进去
#! /bin/bash
### BEGIN INIT INFO
# Provides: thingcom.com
# Required-Start: $local_fs $network
# Required-Stop: $local_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: nginx service
# Description: nginx service daemon
### END INIT INFO
# Author: thingcom
# Modified: Geoffrey Grosenbach http://www.linuxidc.com
# Modified: Clement NEDELCU
# Reproduced with express authorization from its contributors
set -e
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC="nginx daemon"
NAME=nginx
DAEMON=/usr/local/nginx/sbin/$NAME
SCRIPTNAME=/etc/init.d/$NAME
# If the daemon file is not found, terminate the script.
test -x $DAEMON || exit 0
d_start() {
$DAEMON || echo -n " already running"
}
d_stop() {
$DAEMON –s quit || echo -n " not running"
}
d_reload() {
$DAEMON –s reload || echo -n " could not reload"
}
case "$1" in
start)
echo -n "Starting $DESC: $NAME"
d_start
echo "."
;;
stop)
echo -n "Stopping $DESC: $NAME"
d_stop
echo "."
;;
reload)
echo -n "Reloading $DESC configuration..."
d_reload
echo "reloaded."
;;
restart)
echo -n "Restarting $DESC: $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:在 /etc/init.d目录下修改nginx为可执行的权限
执行:chmod +x nginx
3:执行命令:update-rc.d nginx defaults
。
update-rc.d
命令,是用来自动的升级System V类型初始化脚本,简单的讲就是,哪些东西是你想要系统在引导初始化的时候运行的,哪些是希望在关机或重启时停止的,可以用它来帮你设置。
4:最后就可以使用:
开启nginx:service nginx start
停止nginx:service nginx stop
查看nginx服务状态:service nginx status
重启nginx:service nginx restart
这些命令来对nginx进行控制。