48 lines
1.1 KiB
Plaintext
48 lines
1.1 KiB
Plaintext
#!/sbin/runscript
|
|
|
|
set_phpvars() {
|
|
PHPSLOT=${SVCNAME#php-fpm-}
|
|
[ ${PHPSLOT} = 'php-fpm' ] && PHPSLOT="$(eselect php show fpm)"
|
|
|
|
PHP_FPM_CONF="/etc/php/fpm-${PHPSLOT}/php-fpm.conf"
|
|
PHP_FPM_PID="/var/run/php-fpm-${PHPSLOT}.pid"
|
|
}
|
|
|
|
extra_commands="depend"
|
|
extra_started_commands="reload"
|
|
|
|
depend() {
|
|
need net
|
|
use apache2 lighttpd nginx
|
|
}
|
|
|
|
start() {
|
|
ebegin "Starting PHP FastCGI Process Manager"
|
|
set_phpvars
|
|
start-stop-daemon --start --pidfile ${PHP_FPM_PID} --exec \
|
|
/usr/lib/${PHPSLOT}/bin/php-fpm -- -y "${PHP_FPM_CONF}" -g "${PHP_FPM_PID}"
|
|
local i=0
|
|
local timeout=5
|
|
while [ ! -f ${PHP_FPM_PID} ] && [ $i -le $timeout ]; do
|
|
sleep 1
|
|
i=$(($i + 1))
|
|
done
|
|
|
|
[ $timeout -gt $i ]
|
|
eend $?
|
|
}
|
|
|
|
stop() {
|
|
ebegin "Stopping PHP FastCGI Process Manager"
|
|
set_phpvars
|
|
start-stop-daemon --signal QUIT --stop --exec /usr/lib/${PHPSLOT}/bin/php-fpm --pidfile ${PHP_FPM_PID}
|
|
eend $?
|
|
}
|
|
|
|
reload() {
|
|
ebegin "Reloading PHP FastCGI Process Manager"
|
|
set_phpvars
|
|
[ -f ${PHP_FPM_PID} ] && kill -USR2 $(cat ${PHP_FPM_PID})
|
|
eend $?
|
|
}
|