Nginx 및 PHP-FPM용 스크립트 시작, 다시 시작 및 중지

WBOY
풀어 주다: 2016-08-08 09:22:09
원래의
1468명이 탐색했습니다.

재인쇄: http://www.jb51.net/article/58796.htm

서버의 Nginx와 PHP는 우분투와 달리 소스 코드에서 컴파일 및 설치됩니다. 서비스 시작 스크립트가 함께 제공되므로 이전 nginx(start|restart|stop|reload)를 지원하지 않습니다. 스스로 충분한 음식과 의복을 만드십시오. 다음 스크립트는 RHEL, Fedora 및 CentOS에서 적용 가능해야 합니다.

1. Nginx 시작 스크립트/etc/init.d/nginx

코드 복사코드는 다음과 같습니다.


#!/bin/bash
#
# Nginx용 시작 스크립트 - 이 스크립트는 nginx 데몬을 시작 및 중지합니다
#
# chkconfig: - 85 15
# 설명 : Nginx는 HTTP(S) 서버, HTTP(S) 역방향 프록시 및 IMAP/POP3 프록시 서버입니다
# processname: nginx
# config: /usr/local/nginx/conf/nginx.conf
# pidfile: / usr/local/nginx/logs/nginx.pid

# 소스 함수 라이브러리.
/etc/rc.d/init.d/functions

# 소스 네트워킹 구성.
. /etc/sysconfig/network

# 네트워킹이 작동 중인지 확인하세요.
[ "$NETWORKING" = "no" ] && 종료 0

nginx= "/usr/local/nginx/sbin/nginx"
prog=$(기본 이름 $nginx)

NGINX_C/usr/local/nginx/conf/nginx.conf"

[ -f /etc /sysconfig/nginx ] && . /etc/sysconfig/nginx

lockfile=/var/lock/subsys/nginx

start() {
[ -x $ nginx ] || 종료 5
[ -f $NGINX_CONF_FILE ] || 종료 6
echo -n $"$prog 시작: "
daemon $nginx -c $NGINX_CONF_FILE
retval=$?
echo
[ $retval -eq 0 ] && touch $lockfile
return $retval
}

stop() {
echo -n $"$prog 중지 중: "
killproc $prog -QUIT
retval=$?
echo
[ $retval -eq 0 ] && rm -f $lockfile
return $retval
}

restart() {
configtest || return $?
중지
sleep 1
start
}

reload() {
configtest return $?
echo -n $"$prog 다시 로드: "
killproc $nginx -HUP
RETVAL=$?
echo
}

force_reload() {
재시작
}

configtest() {
$nginx -t -c $NGINX_CONF_FILE
}

rh_status() {
상태 $prog
}

rh_status_q() {
rh_status >/dev/null 2>>&1
}

case "$1" in
start)
rh_status_q &&exit 0
$1
;;
중지)
rh_status_q || 종료 0
$1
;;
재시작|configtest)
$1
;;
다시 로드 )
rh_status_q || 종료 7
; ;;
condrestart|try -restart)
rh_status_q || 종료 0
;;
*)
echo $" $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload |configtest}"
종료 2
esac



수정 후 저장 그것을 입력하고 다음 명령을 실행합니다



코드를 복사합니다
코드는 다음과 같습니다.

sudo chmod +x / etc/init.d/nginxsudo /sbin/chkconfig nginx on# 확인sudo /sbin/chkconfig --list nginxnginx 0:off 1:off 2:on 3: 4:on 5:on 6:off



완료! 다음 명령을 사용하여 Nginx를 관리할 수 있습니다



코드 복사
코드는 다음과 같습니다


서비스 nginx 시작
서비스 nginx 중지
서비스 nginx 재시작
서비스 nginx reload

/etc/init.d/nginx start
/etc/init. d/nginx 중지
/etc/init.d/nginx 재시작
/etc/init.d/nginx reload


2. PHP-FPM 시작 스크립트/etc/ init.d/php-fpm

코드 복사코드는 다음과 같습니다.


#!/bin/ bash
#
# PHP-FPM 서버용 시작 스크립트.
#
# chkconfig: 345 85 15
# 설명: PHP는 HTML 내장 스크립트 언어입니다
# 프로세스 이름 : php- fpm
# 구성: /usr/local/php/etc/php.ini

# 소스 함수 라이브러리.
. 🎜>
PHP_PATH=/usr/local
DESC="php-fpm daemon"
NAME=php-fpm
# php-fpm 경로
DAEMON=$PHP_PATH/php/sbin/ $NAME
# 구성 파일 경로
C/php/etc/php-fpm.conf
# PID 파일 경로(php-fpm.conf에서 설정)
PIDFILE=$PHP_PATH/php/var /run/ $NAME.pid
SCRIPTNAME=/etc/init.d/$NAME

# 패키지가 제거된 경우 정상적으로 종료합니다.
test -x $DAEMON || 🎜>
rh_start() {
$DAEMON -y $CONFIGFILE || echo -n " ​​​​이미 실행 중"
}

rh_stop() {
kill -QUIT ` cat $PIDFILE` | " ​​실행되지 않음"
}

rh_reload() {
kill -HUP `cat $PIDFILE` || t reload"
}

case "$1" in
start)
echo -n "$DESC 시작: $NAME"
rh_start
echo "."
중지)
echo -n "$DESC 중지 중: $NAME"
rh_stop
echo "."
reload)
echo -n "$DESC 구성 다시 로드 중..."
rh_reload
echo "다시 로드되었습니다."
;;
다시 시작)
echo -n "$DESC 다시 시작: $NAME"
rh_stop
sleep 1
         rh_start
echo "."
;;
*)
echo "사용법: $SCRIPTNAME {start|stop|restart|reload}" >&2
종료 3
;;
esac
exit 0



편집 후 다음 명령을 저장하고 실행


코드 복사

code 다음과 같습니다:sudo chmod +x /etc/init.d/php-fpmsudo /sbin/chkconfig php-fpm on

# 확인

sudo /sbin / chkconfig --list php-fpm
php-fpm 0:off 1:off 2:on 3:on 4:on 5:on 6:off



완료! 다음 명령을 사용하여 php-fpm을 관리할 수 있습니다


코드 복사

코드는 다음과 같습니다. 서비스 php-fpm 시작서비스 php-fpm 중지

서비스 php-fpm 다시 시작

서비스 php-fpm 다시 로드

/etc/init.d/php-fpm 시작
/ etc/init.d/ php-fpm 중지
/etc/init.d/php-fpm 재시작
/etc/init.d/php-fpm 다시 로드



위 내용은 관련 내용을 포함하여 Nginx와 PHP-FPM의 시작, 재시작, 중지 스크립트를 소개하고 있으니 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되길 바랍니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿