最近有个老项目的php通过curl调华为的https接口报SSL connect error,因为华为要求最低tsl版本为1.2,老的系统是centos6.6,升级nss内核不起作用,于是决定将系统升级到centos7,同时php升级到5.6(老项目不敢升级到7/8,怕有问题),一般情况下centos7和php5.6基本上也是绝配了。于是找运维申请了两台新主机,同时让运维安装了php5.6及对应的扩展,拿到机器后发现没有装php-fpm,于是自己通过yum install php56-php-fpm安装的php-fpm,安装完以后,发现通过systemctl或者service起不了,咋也找不到php-fpm,后来通过查看php的安装路径找到了php-fpm的安装路径,可是没有service可用,于是就用php-fpm的命令来实现重启了。
//查找php的安装目录
[root@10-10-50-97 ~]# which php
/bin/php
[root@10-10-50-97 ~]# ls -al /bin/php*
lrwxrwxrwx 1 root root 10 Apr 20 11:47 /bin/php -> /bin/php56
lrwxrwxrwx 1 root root 32 Apr 20 11:47 /bin/php56 -> /opt/remi/php56/root/usr/bin/php
lrwxrwxrwx 1 root root 36 Apr 20 11:47 /bin/php56-cgi -> /opt/remi/php56/root/usr/bin/php-cgi
lrwxrwxrwx 1 root root 33 Apr 20 11:47 /bin/php56-pear -> /opt/remi/php56/root/usr/bin/pear
lrwxrwxrwx 1 root root 38 Apr 20 11:47 /bin/php56-phar -> /opt/remi/php56/root/usr/bin/phar.phar
//php-fpm的安装路径是bin同级的sbin目录下,即/opt/remi/php56/root/usr/sbin/php-fpm
php-fpm的master进程可以理解一下信号
- INT, TERM 立刻终止
- QUIT 平滑终止
- USR1 重新打开日志文件
- USR2 平滑重载所有worker进程并重新载入配置和二进制模块
php-fpm的启动一种是生成pid文件,一种是不生成pid文件,生成pid文件的话需要将/opt/remi/php56/root/etc/php-fpm.conf中的pid注视去掉
[global]
; Pid file
; Default Value: none
pid = /opt/remi/php56/root/var/run/php-fpm/php-fpm.pid
1 不生成pid重启
[root@10-10-50-97 ~]# ps aux | grep php-fpm | grep master | grep -v grep
root 30492 0.0 0.1 385068 13996 ? Ss 21:14 0:00 php-fpm: master process (/opt/remi/php56/root/etc/php-fpm.conf)
[root@10-10-50-97 ~]# kill -USR2 30492
[root@10-10-50-97 ~]# ps aux | grep php-fpm | grep master | grep -v grep
root 31232 0.0 0.1 385068 13716 ? Ss 21:53 0:00 php-fpm: master process (/opt/remi/php56/root/etc/php-fpm.conf)
2 生成pid的重启
[root@10-10-50-97 ~]# ps aux | grep php-fpm | grep master | grep -v grep
root 31289 0.0 0.1 385068 13908 ? Ss 21:57 0:00 php-fpm: master process (/opt/remi/php56/root/etc/php-fpm.conf)
[root@10-10-50-97 ~]# kill -USR2 `cat /opt/remi/php56/root/var/run/php-fpm/php-fpm.pid`
[root@10-10-50-97 ~]# ps aux | grep php-fpm | grep master | grep -v grep
root 31303 0.0 0.1 385068 14052 ? Ss 21:57 0:00 php-fpm: master process (/opt/remi/php56/root/etc/php-fpm.conf)
3 退出
//master可识别信号
kill -INT `cat /opt/remi/php56/root/var/run/php-fpm/php-fpm.pid`
//直接杀死php-fpm进程
killall php-fpm
文章评论