PHP Redis扩展无法加载的问题解决方法


Posted in PHP onAugust 22, 2019

最近在工作中需要使用PHP访问Redis,从https://github.com/phpredis/phpredis下载了phpredis,并且按照官方的说明进行了安装

phpize
./configure [--enable-redis-igbinary]
make && make install

但是在重启php-fpm的过程中,发生了如下的错误,redis.so无法载入

[root@brand009 modules]# /usr/sbin/php-fpm
/usr/sbin/php-fpm: /usr/lib64/libssl.so.10: no version information available (required by /usr/sbin/php-fpm)
/usr/sbin/php-fpm: /usr/lib64/libcrypto.so.10: no version information available (required by /usr/sbin/php-fpm)
/usr/sbin/php-fpm: /usr/lib64/libcrypto.so.10: no version information available (required by /usr/sbin/php-fpm)
[29-Jun-2015 11:14:43] NOTICE: PHP message: PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/redis.so' - /usr/lib64/php/modules/redis.so: undefined symbol: zend_new_interned_string in Unknown on line 0
<br />
<b>Warning</b>: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/redis.so' - /usr/lib64/php/modules/redis.so: undefined symbol: zend_new_interned_string in <b>Unknown</b> on line <b>0</b><br />
<br />

试了网上一些解决方案,均无法解决问题。

实在没别的办法,于是打算重装php-fpm试试,遂去http://php-fpm.org/download/想下载个新版本的php-fpm,结果发现版本大于5.3.3的PHP内部已经集成了php-fpm,不用再另行安装了。

PHP Redis扩展无法加载的问题解决方法

于是用php --version查询了一下PHP的版本,已经是5.6.6了,

php --version
PHP 5.6.6 (cli) (built: Mar 9 2015 13:27:38) 
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies

突然恍然大悟,自己一直用的是安装在另一个目录的php-fpm,和PHP并不是配套的

查看这个php-fpm的版本,发现是5.3.3

$/usr/sbin/php-fpm -v
PHP 5.3.3 (fpm-fcgi) (built: Oct 30 2014 20:14:56)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies

而PHP内部集成的php-fpm版本是5.6.6

$ /usr/local/php/sbin/php-fpm -v
PHP 5.6.6 (fpm-fcgi) (built: Mar 9 2015 13:27:55)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies

用PHP内部集成的php-fpm重启,成功!

root   18442   1 0 17:36 ?    00:00:01 php-fpm: master process (/usr/local/php/etc/php-fpm.conf)
nobody  30640 18442 0 18:04 ?    00:00:02 php-fpm: pool www     
nobody  31156 18442 0 18:05 ?    00:00:02 php-fpm: pool www     
nobody  32424 18442 0 18:08 ?    00:00:02 php-fpm: pool www

所以粗心害死人啊,以后在安装程序的时候需要多加小心,尽量显式的标明软件的版本,这样就会少犯这样的错误,少走弯路了。

另外需要注意:

在php.ini中一定要配置extension_dir和extension,如:

extension_dir = "/usr/lib64/php/modules/"
extension=redis.so

phpredis编译出来的redis.so也需要拷贝到"/usr/lib64/php/modules/"中

"/etc/php.d/"中也要软连接redis.so,并且要创建一个redis.ini文件,内容如下:

$ cat /etc/php.d/redis.ini 
; Enable redis extension module
extension=redis.so

安装phpredis还可以通过命令

pecl install redis

以上就是本次介绍的全部知识点内容,感谢大家的阅读和对三水点靠木的支持。

PHP 相关文章推荐
PHP 日常开发小技巧
Sep 23 PHP
php面向对象全攻略 (八)重载新的方法
Sep 30 PHP
PHP 编写大型网站问题集
May 07 PHP
php中记录用户访问过的产品,在cookie记录产品id,id取得产品信息
May 04 PHP
使用dump函数,给php加断点测试
Jun 25 PHP
php在linux下检测mysql同步状态的方法
Jan 15 PHP
解决更换PHP5.4以上版本后Dedecms后台登录空白问题的方法
Oct 23 PHP
PHP命令行执行整合pathinfo模拟定时任务实例
Aug 12 PHP
PHP中SERIALIZE和JSON的序列化与反序列化操作区别分析
Oct 11 PHP
PHP中PCRE正则解析代码详解
Apr 26 PHP
ThinkPHP 框架实现的读取excel导入数据库操作示例
Apr 14 PHP
php实现微信和支付宝支付的示例代码
Aug 11 PHP
PHP Primary script unknown 解决方法总结
Aug 22 #PHP
php用wangeditor3实现图片上传功能
Aug 22 #PHP
PHP生成zip压缩包的常用方法示例
Aug 22 #PHP
Laravel 实现数据软删除功能
Aug 21 #PHP
PHP针对redis常用操作实例详解
Aug 17 #PHP
php5.6.x到php7.0.x特性小结
Aug 17 #PHP
PHP中非常有用却鲜有人知的函数集锦
Aug 17 #PHP
You might like
用PHP 快速生成 Flash 动画的方法
2007/03/06 PHP
解析PHP汉字转换拼音的类
2013/06/18 PHP
PHP错误Parse error: syntax error, unexpected end of file in test.php on line 12解决方法
2014/06/23 PHP
使用WAMP搭建PHP本地开发环境
2017/05/10 PHP
JavaScript在IE和Firefox浏览器下的7个差异兼容写法小结
2010/06/18 Javascript
JavaScript操作选择对象的简单实例
2016/05/16 Javascript
在Javascript操作JSON对象,增加 删除 修改的简单实现
2016/06/02 Javascript
学习Javascript闭包(Closure)知识
2016/08/07 Javascript
针对JavaScript中this指向的简单理解
2016/08/26 Javascript
jQuery.form.js的使用详解
2017/06/14 jQuery
简述jQuery Easyui一些用法
2017/08/01 jQuery
vue.js select下拉框绑定和取值方法
2018/03/03 Javascript
js实现简单的贪吃蛇游戏
2020/04/23 Javascript
使用typescript快速开发一个cli的实现示例
2020/12/09 Javascript
swiperjs实现导航与tab页的联动
2020/12/13 Javascript
[02:12]Dota 2 推出全新英雄—— 电炎绝手
2019/08/23 DOTA
安装dbus-python的简要教程
2015/05/05 Python
Python实现PS滤镜的旋转模糊功能示例
2018/01/20 Python
python使用Tkinter实现在线音乐播放器
2018/01/30 Python
Python及Django框架生成二维码的方法分析
2018/01/31 Python
Python动态导入模块的方法实例分析
2018/06/28 Python
Python实现的逻辑回归算法示例【附测试csv文件下载】
2018/12/28 Python
python3.7 的新特性详解
2019/07/25 Python
使用Python中tkinter库简单gui界面制作及打包成exe的操作方法(二)
2020/10/12 Python
经济学人订阅:The Economist
2018/07/19 全球购物
高考寄语大全
2014/04/08 职场文书
简单租房协议书
2014/04/09 职场文书
综艺节目策划方案
2014/06/13 职场文书
2014个人反腐倡廉思想汇报
2014/09/15 职场文书
环卫工作个人总结
2015/03/04 职场文书
2015年上半年计生工作总结
2015/03/30 职场文书
秋收起义观后感
2015/06/11 职场文书
复制别人的成功真的会成功吗?
2019/10/17 职场文书
用Python提取PDF表格的方法
2021/04/11 Python
Python中使用subprocess库创建附加进程
2021/05/11 Python
Win10 和 Win11可以共存吗? win10/11产品生命周期/服务更新介绍
2021/11/21 数码科技