轉載:http://www.javashuo.com/article/p-suctluoz-d.htmlphp
啓動php-fpm:html
/usr/local/php/sbin/php-fpmphp-fpm
php 5.3.3 之後的php-fpm 再也不支持 php-fpm 之前具備的 /usr/local/php/sbin/php-fpm (start|stop|reload)等命令,因此不要再看這種老掉牙的命令了,須要使用信號控制:ui
master進程能夠理解如下信號spa
INT, TERM 馬上終止
QUIT 平滑終止
USR1 從新打開日誌文件
USR2 平滑重載全部worker進程並從新載入配置和二進制模塊.net
一個簡單直接的重啓方法:3d
先查看php-fpm的master進程號日誌
# ps aux|grep php-fpm root 21891 0.0 0.0 112660 960 pts/3 R+ 16:18 0:00 grep --color=auto php-fpm root 42891 0.0 0.1 182796 1220 ? Ss 4月18 0:19 php-fpm: master process (/usr/local/php/etc/php-fpm.conf) nobody 42892 0.0 0.6 183000 6516 ? S 4月18 0:07 php-fpm: pool www nobody 42893 0.0 0.6 183000 6508 ? S 4月18 0:17 php-fpm: pool www
重啓php-fpm:code
kill -USR2 42891htm
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'