PHP-FPMを起動するときに、時間がかかった挙句、failedになる現象が発生しました。
# /etc/init.d/php-fpm start
Starting php-fpm ................................... failed
また、終了時にpidが見つからないというメッセージが表示されます。
# /etc/init.d/php-fpm stop
Gracefully shutting down php-fpm warning, no pid file found - php-fpm is not running ?
実際、stopしてもプロセスが残っている状態です。
# ps aux |grep php
root 16260 0.0 0.9 161928 5820 ? Ss 08:40 0:00 php-fpm: master process (/usr/local/etc/php-fpm.conf)
webadmin 16261 0.0 4.9 175012 29700 ? S 08:40 0:00 php-fpm: pool www
webadmin 16262 0.0 3.6 167872 21884 ? S 08:40 0:00 php-fpm: pool www
最初、/usr/local/etc/php-fpm.confで、pidの位置を/var/run直下に置こうとして絶対パスにしていたのですが、これが問題だったようです。
[global]
; Pid file
; Note: the default prefix is /usr/local/var
; Default Value: none
pid = /var/run/php-fpm.pid
pidファイル自体は作成されていたので、問題ないように思っていました。
以下のように、相対パスで/usr/local/var/run以下に置くようにしたら解決しました。
[global]
; Pid file
; Note: the default prefix is /usr/local/var
; Default Value: none
pid = run/php-fpm.pid
起動も一瞬でした。
# /etc/init.d/php-fpm start
Starting php-fpm done
もちろん、終了も問題なくできます。