#! /bin/sh### BEGIN INIT INFO# Provides: php-fpm# Required-Start: $remote_fs $network# Required-Stop: $remote_fs $network# Default-Start: 2 3 4 5# Default-Stop: 0 1 6# Short-Deion: starts php-fpm# Deion: starts the PHP FastCGI Process Manager daemon### END INIT INFOphp_fpm_BIN=/usr/sbin/php-fpmphp_fpm_CONF=/etc/php/php-fpm.confphp_fpm_PID=/var/run/php-fpm.pidtmp_pid=/var/run/php-fpm.tmp.pid php_opts= "--fpm-config $php_fpm_CONF--pid $tmp_pid"wait_for_pid() { localpid= $1whilekill-0 $pid>/dev/null 2>&1 ; dosleep 1; done} case"$1"instart) echo-n "Starting php-fpm "$php_fpm_BIN--daemonize $php_optsif[ "$?"!= 0 ] ; thenecho" failed"exit1 ficat $tmp_pid> $php_fpm_PIDecho" done";; stop) echo-n "Gracefully shutting down php-fpm "if[ ! -r $php_fpm_PID] ; thenecho"warning, no pid file found - php-fpm is not running ?"exit1 fipid=$(cat $php_fpm_PID) kill-QUIT $pidwait_for_pid $pidecho" done";; status) if[ ! -r $php_fpm_PID] ; thenecho"php-fpm is stopped"exit0 fiPID=`cat $php_fpm_PID` ifps -p $PID| grep -q $PID; thenecho"php-fpm (pid $PID) is running..."elseecho"php-fpm dead but pid file exists"fi;; force-quit) echo-n "Terminating php-fpm "if[ ! -r $php_fpm_PID] ; thenecho"warning, no pid file found - php-fpm is not running ?"exit1 fipid=$(cat $php_fpm_PID) kill-TERM $pidwait_for_pid $pidecho" done";; restart) $0stop $0start ;; reload) echo-n "Reload service php-fpm "if[ ! -r $php_fpm_PID] ; thenecho"warning, no pid file found - php-fpm is not running ?"exit1 fipid=$(cat $php_fpm_PID) error=$( $0start >/dev/null) [[ "$error"!= ""]] && echo$error&& exit1 kill-QUIT $pid# 这里等待该pid似乎也不太好echo" done";; configtest) $php_fpm_BIN-t ;; *) echo"Usage: $0{start|stop|force-quit|restart|reload|status|configtest}"exit1 ;; esac
php reload,关于php-fpm reload的优雅实现
最新推荐文章于 2021-04-01 00:45:50 发布