프로덕션 서버:
OS: CentOS 6.8
1. "/etc/init.d" 디렉터리에 새 nginx 파일을 만들고 다음 코드를 추가합니다.
[root@localhost init.d]# vi nginx
[root@localhost init.d]# cat nginx
#nginx Nginx HTTP 서버용 시작 스크립트
# v.0.0.2 버전입니다.
# chkconfig: - 85 15
# 설명: Nginx는 고성능 웹 및 프록시 서버입니다.
# 많은 기능이 있지만 모든 사람에게 적합한 것은 아닙니다.
# processname: nginx
# pidfile: /var/run/nginx.pid
# 구성: /usr/local/nginx/conf/nginx.conf
nginxd=/application/nginx/sbin/nginx
nginx_config=/application/nginx/conf/nginx.conf
nginx_pid=/var/run/nginx.pid
RETVAL=0
prog="nginx"
# 소스 함수 라이브러리.
./etc/rc.d/init.d/functions
# 소스 네트워킹 구성.
./etc/sysconfig/network
# 네트워킹이 up.
[ ${NETWORKING} = "no" ] && 종료 0
[ -x $nginxd ] || 종료 0
# nginx 데몬 기능을 시작합니다.
start() {
if [ -e $nginx_pid ];then
echo "nginx가 이미 실행 중입니다...."
종료 1
fi
echo -n $"$prog 시작: "
daemon $nginxd -c ${nginx_config}
RETVAL=$?
echo
[ $RETVAL = 0 ] && touch /var/lock/subsys/nginx
return $RETVAL
}
# nginx 중지 데몬 기능.
stop() {
echo -n $"Stopping $prog: "
killproc $nginxd
RETVAL=$?
echo
[ $RETVAL = 0 ] && rm -f /var/lock/subsys/nginx /var/run/nginx.pid
}
# nginx 서비스 기능을 다시 로드합니다.
reload() {
echo -n $"Reloading $prog: "
#kill -HUP `cat ${nginx_pid}`
killproc $nginxd -HUP
RETVAL=$?
echo
}
# 어떻게 호출되었는지 확인하세요.
케이스 "$1" in
start)
start
;;
stop)
stop
;;
새로고침)
새로고침
;;
다시 시작)
중지
시작
;;
status)
status $prog
RETVAL=$?
;;
*)
echo $"사용법: $prog {start|stop|restart|reload|status|help}"
exit 1
esac
exit $ RETVAL
2. /etc/init.d/nginx 파일을 저장한 후 다음 명령을 실행합니다:
[root@localhost init.d]# chmod 755 /etc /init.d/nginx #파일 실행 권한 부여
[root@localhost init.d]# chkconfig --add nginx
[root@localhost init.d]# chkconfig - -레벨 2345 nginx on #부팅 설정
3. 중단 없이 nginx 시작, 중지 및 다시 시작
[root@localhost /]# 서비스 nginx 상태
nginx( PID 1621 1619) RUNG RUNG ...
[root@localhost /]# Service nginx stop정지 nginx : ginx start
시작 nginx :
>