Nginx啟動腳本/重啟腳本
1.介紹
nginx 啟動關閉,每次需要手動kill掉nginx,配置文件發生變化需要改變,提供該腳本解決問題
2.腳本
#!/bin/sh
#NGINX_HOME=`dirname $(cd "$(dirname "$0")"; pwd)`
NGINX_HOME='/usr/local/nginx'
# 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="$NGINX_HOME/sbin/nginx"
prog=$(basename $nginx)
NGINX_CONF_FILE="$NGINX_HOME/conf/nginx.conf"
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
}
restart() {
configtest || return $?
stop
start
}
reload() {
configtest || return $?
echo -n $"Reloading $prog: "
killproc $nginx -HUP
RETVAL=$?
echo :wq
}
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
3.配置
該腳本有兩種方式部署,第一種放到/etc/init.d service啟動,第二中放到 nginx bin目錄下替代原來nginx
3.1 service啟動
將nginx腳本 復制到/etc/init.d/目錄下,腳本名nginx
賦予可執行權限 chmod +x /etc/init.d/nginx
檢查一下/sbin/chkconfig nginx on; /sbin/chkconfig --list nginx
之后,就可以使用以下命令了
service nginx start
service nginx stop
service nginx restart
service nginx reload
/etc/init.d/nginx start
/etc/init.d/nginx stop
/etc/init.d/nginx restart
/etc/init.d/nginx reload
3.2 替換./sbin/nginx
mv nginx /usr/local/nginx /sbin/nginxs
修改nginxs,改變NGINX_HOME值
NGINX_HOME=`dirname $(cd "$(dirname "$0")"; pwd)` #NGINX_HOME='/usr/local/nginx'chmod +x nginxs
./sbin/nginxs status
3.2.1 開啟啟動
編輯 /etc/rc.local 放入
/usr/local/nginx/sbin/nginxs start
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!