概述 CentOS8为例,php7.2安装php-redis扩展,查看redis版本:Redis server v=5.0.3
先下载phpredis-develop.zip
cd /tmp
wget https://codeload.github.com/phpredis/phpredis/zip/develop
安装unzip、zip解压工具
yum -y install unzip zip
解压
unzip phpredis-develop.zip
解压后会多了个phpredis-develop的目录。进入目录
cd phpredis-develop
安装phpize模块
yum -y install php-devel
执行phpize
sudo phpize
查找php-config路径
find / -name php-config
例如:我的是:/usr/bin/php-config
配置环境
./configure --with-php-config=/usr/bin/php-config
编译安装
sudo make && make install
成功后会告诉你生成的redis.so扩展文件在哪个目录
Installing shared extensions: /usr/local/php/lib/php/extensions/no-deBUG-zts-20170718/
最后修改php.ini文件
vim /etc/php.ini
添加(本文不需要添加)
extension=/usr/local/php/lib/php/extensions/no-deBUG-zts-20170718/redis.so
(php-redis扩展2.2.8以前的版本)查看php-redis扩展安装是否成功,发现扩展功能且有警告“undefined symbol: php_json_decode_ex”。需查找php.ini文件位置,并在文件最后追加内容extension=redis.so,即可解决警告问题。重启httpd、php服务,即可看到redis扩展功能正产显示。
php -m |grep redis
find / -name php.ini
echo 'extension=redis.so' >> /etc/php.ini
systemctl restart nginx
systemctl restart php-fpm
php -m |grep redis
(本文使用的是php-redis扩展2.2.8以后的版本)查看php-redis扩展安装是否成功,未能发现扩展功能,需在php的扩展目录创建php中redis扩展的配置文件。重启httpd、php服务,再次查看php-redis扩展,即看到扩展功能正常。
php -m |grep redis
cd /etc/php.d/
echo '; Enable redis extension module' > /etc/php.d/30-redis.ini
echo 'extension=redis' >> /etc/php.d/30-redis.ini
systemctl restart httpd
systemctl restart php-fpm
php -m |grep redis
最后重启php-fpm,在输出phpinfo()查看redis信息
systemctl stop php-fpm
systemctl start php-fpm