PHP配置redis支持
Posted 赖荣生
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP配置redis支持相关的知识,希望对你有一定的参考价值。
一、windows+phpStudy
1、使用phpinfo查看PHP的版本信息,根据信息选择32位还是64位版本
http://192.168.3.68/phpinfo.php
2、根据PHP版本号,编译器版本号和CPU架构选择下载内容,下载地址如下
http://windows.php.net/downloads/pecl/releases/redis/
http://windows.php.net/downloads/pecl/releases/igbinary/1.2.1/
我用的是这个版本
3、解压缩后,将php_redis.dll和php_redis.pdb拷贝至php的ext目录下,根据拟选用的php版本找到php目录然后复制到ext目录下。
4、修改 php.ini 在该文件中加入:
; php_redis extension=php_igbinary.dll extension=php_redis.dll
注意:extension=php_igbinary.dll一定要放在extension=php_redis.dll的前面,否则此扩展不会生效 (igbinary.dll可以不加)
5、重启,使用phpinfo查看扩展是否成功安装;
http://192.168.3.68/phpinfo.php
二、centos7+ng1.8+php7
1、安装前的准备(安装php-devel),不安装这个不能生成configure
yum install php-devel
2、下载redis扩展/usr/local/src目录
# 进入src目录 cd /usr/local/src # 下载扩展 wget http://pecl.php.net/get/redis-3.1.6.tgz
3、解压
tar zxf redis-3.1.6.tgz cd redis-3.1.6
4、生成配置文件并编译redis扩展
# phpize执行文件的路径 /usr/local/php/bin/phpize # 生成配置文件 ./configure --with-php-config=/usr/local/php/bin/php-config # 编译redis扩展 make && make install
注意:机器上有可能有多个php注意编译和启动要使用同一个php,之前使用“./configure --with-php-config=/usr/bin/php-config”编译后启动php提示如下错误,改为以上命令编译后正常
[13-Jan-2018 11:12:30] NOTICE: PHP message: PHP Warning: PHP Startup: Unable to load dynamic library \'/usr/local/php/lib/php/extensions/no-debug-non-zts-20151012/redis.so\' - /usr/local/php/lib/php/extensions/no-debug-non-zts-20151012/redis.so: undefined symbol: zval_used_for_init in Unknown on line 0 <br /> <b>Warning</b>: PHP Startup: Unable to load dynamic library \'/usr/local/php/lib/php/extensions/no-debug-non-zts-20151012/redis.so\' - /usr/local/php/lib/php/extensions/no-debug-non-zts-20151012/redis.so: undefined symbol: zval_used_for_init in <b>Unknown</b> on line <b>0</b><br />
6、修改php.ini配置文件
# 编辑 vi /usr/local/php/lib/php.ini # 任意行添加如下内容 extension="redis.so"
7、将编译好的redis.so复制到extensions目录中
cp /usr/local/src/redis-3.1.6/modules/redis.so /usr/local/php/lib/php/extensions/no-debug-non-zts-20151012/
我的目录是这个根据情况你需要修改。
8、重新启动php
# 查看php进程 ps -ef | grep php-fpm # 杀掉php进程 killall php-fpm # 重启php /usr/local/php/sbin/php-fpm
9、检查php redis扩展安装是否正确,
https://192.168.3.85/phpinfo.php
看到如下redis信息即可。
参考:
http://blog.csdn.net/baidu_30000217/article/details/51481138
以上是关于PHP配置redis支持的主要内容,如果未能解决你的问题,请参考以下文章