红联Linux门户
Linux帮助

Linux下Nginx快捷启动关闭设置

发布时间:2017-02-10 11:45:11来源:linux网站作者:三个俩角色
Linux下Nginx开关,正常方式是这样({nginx}-为Nginx安装路径):
{nginx}/sbin/nginx #启动  
{nginx}/sbin/nginx -s stop #停止
 
这种方式带来很多不便,因此介绍一种快捷启动关闭Nginx的方式。
 
在/etc/init.d下创建nginx启动脚本文件:
vim /etc/init.d/nginx  
 
i进入编辑状态,粘贴以下代码后保存:
 
将/usr/local/nginx/替换为自身nginx的安装路径。
 
#!/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
 
修改脚本权限:
chmod 755 nginx  
 
将脚本文件加入到chkconfig中:
chkconfig --add nginx  
 
设置nginx开机在3和5级别自动启动:
chkconfig --level 35 nginx on  
 
创建软连接:
cd /usr/bin   
ln -s /etc/init.d/nginx  
 
愉快的玩耍吧!
 
这里边的命令都可以执行:
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}" 
 
以下是示例:
nginx start  
nginx stop  
nginx restart
 
本文永久更新地址:http://www.linuxdiyf.com/linux/28311.html