查看: 76|回复: 0

php-fpm 的各种启动方式

[复制链接]

0

主题

0

回帖

0

积分

热心网友

金币
0
阅读权限
220
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2009-6-1
发表于 2019-12-31 16:39:00 | 显示全部楼层 |阅读模式

 

       启动 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进程号

[root@test ~]# ps -ef|grep php-fpm
root     27556     1  0 15:57 ?        00:00:00 php-fpm: master process (/usr/local/php/etc/php-fpm.conf)
www      27557 27556  0 15:57 ?        00:00:00 php-fpm: pool www             
www      27558 27556  0 15:57 ?        00:00:00 php-fpm: pool www             
www      27559 27556  0 15:57 ?        00:00:00 php-fpm: pool www             
www      27560 27556  0 15:57 ?        00:00:00 php-fpm: pool www     
root     27733 26938  0 16:35 pts/0    00:00:00 grep php-fpm   

       重启 php-fpm:

kill -USR2 27556

        这样就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'


来源:https://www.cnblogs.com/morgan363/p/12125187.html
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部