a. 现在觉得启动命令太麻烦,虽然开机可以自启动,但是每次改动要重新启动 nginx 的话,要么输入命令,要么开机,都还不是很好,那么我们能不能创造一个更好的方式呢?当然可以,我们可以通过设置 System V 脚本.
b. 脚本代码如下所示:
server 命令的代码
#!/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/local/nginx/sbin/nginx"
prog=$(basename $nginx)
NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf"
[ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx
lockfile=/var/lock/subsys/nginx
start() {
[ -x $nginx ] || exit 5
[ -f $NGINX_CONF_FILE ] || exit 6
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=$?
echo
[ $retval -eq 0 ] && rm -f $lockfile
return $retval
killall -9 nginx
}
restart() {
configtest || return $?
stop
sleep 1
start
}
reload() {
configtest || return $?
echo -n $"Reloading $prog: "
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
c. 创建命令如下,手先跳转到 / etc/init.d 下创建 nginx 启动脚本文件,命令如下;
c.1 cd /etc/init.d/
c.2 vim nginx 创建一个新的 nginx 文件,将上面的命令代码 copy 到里面,然后保存
d. 修改脚本权限,命令如下:chmod 755 nginx
e. 将脚本文件加入到 chkconfig 中 chkconfig --add nginx
f. 设置 nginx 开机在 3 和 5 级别自动启动 chkconfig --level 35 nginx on
g. 测试 nginx 脚本文件是否能够正常使用,命令如下,我均已测试,全部可以使用.
到这里我们这片笔记就完成了,能帮助大家就帮到,帮不到大家,谢谢大家了,这只是学习笔记,不用较真某些东西,谢谢~~~~
g.1 /etc/init.d/nginx restart
g.2 /etc/init.d/nginx reload
g.3 /etc/init.d/nginx stop
后面有机会我还会再说这块的,如何将一个网站部署到 nginx 下去~~~~
每天的努力都是为了未来更够更好~~~~~
来源: http://www.bubuko.com/infodetail-2459297.html