PHP 重啓 php-fpm 的幾種方法

啓動php-fpm:

/usr/local/php/sbin/php-fpm

php 5.3.3 以後的php-fpm 不再支持 php-fpm 以前具有的 /usr/local/php/sbin/php-fpm (start|stop|reload)等命令,所以不要再看這種老掉牙的命令了,需要使用信號控制:

master進程可以理解以下信號

INT, TERM 立刻終止
QUIT 平滑終止
USR1 重新打開日誌文件
USR2 平滑重載所有worker進程並重新載入配置和二進制模塊

 一個簡單直接的重啓方法:

先查看php-fpm的master進程號

# ps aux | grep php-fpm | grep master | grep -v grep
root     13225  0.0  0.0 204820  7508 ?        Ss   09:37   0:01 php-fpm: master process (/usr/local/php/etc/php-fpm.conf)
You have new mail in /var/spool/mail/root

 

重啓php-fpm:

kill -USR2 13225  

OK了。

上面方案一般是沒有生成php-fpm.pid文件時使用,如果要生成php-fpm.pid,使用下面這種方案:

上面master進程可以看到,matster使用的是/usr/local/php/etc/php-fpm.conf這個配置文件,cat /usr/local/php/etc/php-fpm.conf 發現:

[global]
; Pid file
; Note: the default prefix is /usr/local/php/var
; Default Value: none
;pid = run/php-fpm.pid

pid文件路徑應該位於/usr/local/php/var/run/php-fpm.pid,由於註釋掉,所以沒有生成,我們把註釋去除,再kill -USR2 42891 重啓php-fpm,便會生成pid文件,下次就可以使用以下命令重啓,關閉php-fpm了:

php-fpm 關閉:
kill -INT 'cat /usr/local/php/var/run/php-fpm.pid'
php-fpm 重啓:
kill -USR2 'cat /usr/local/php/var/run/php-fpm.pid'

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章