一起学习网 一起学习网

PHP中重启php-fpm的几种方法汇总

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 greproot     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'

Mac下php-fpm重启方式

1、查看php-fpm端口使用情况

sudo lsof -i:9000

2、修改php.ini文件使其生效,需要重启php-fpm,关闭php-fpm命令

sudo killall php-fpm

3、启动php-fpm

sudo php-fpm

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。