php7安装Redis扩展 php-fpm的重启方法

如果出现“ext/standard/php_smart_str.h: No such file or directory”,就是因为phpredis包不正确

1.最新的 phpredis 分了几大分支,针对最新的PHP稳定发行版 php7 有专门为php7的分支,所以我们从github拉下phpredis 源码

git clone https://github.com/nicolasff/phpredis
 
/usr/local/php/bin/phpize
 #找不到phpize的路径可用whereis命令查看:whereis phpize 得到路径 或者 find / -name phpize 得到路径
 
./configure --with-php-config=/usr/local/php/bin/php-config 
#此处为php-config的路径,可用whereis php-config查看路径 或者 find / -name phpize 得到路径
 
make && make install
 
---- success !

2、配置php支持

vi /usr/local/php/etc/php.ini  #编辑配置文件,在最后一行添加以下内容

添加

extension="redis.so"

:wq! #保存退出

3.php-fpm重启

启动php-fpm:
/Data/apps/php7/sbin/php-fpm(这是源码包凡事安装的)
php 5.3.3 以后的php-fpm 不再支持 php-fpm 以前具有的 /Data/apps/php7/sbin/php-fpm(start|stop|reload)等命令,所以不要再看这种老掉牙的命令了,需要使用信号控制:

master进程可以理解以下信号

INT, TERM 立刻终止
QUIT 平滑终止
USR1 重新打开日志文件
USR2 平滑重载所有worker进程并重新载入配置和二进制模块

一个简单直接的重启方法:

先查看php-fpm的master进程号
--------------------- 

以下方法没试过copy过来的

上面方案一般是没有生成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

 

id文件路径应该位于/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://blog.csdn.net/liuchen1314/article/details/79387684 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值