PHP Warning: PHP Startup: redis: Unable to initialize module
redis已安装,且已经在php中安装了redis.so,但升级php版本后不能使用原来的redis.so扩展,需要重新编译安装phpredis。今天安装后重启php-fpm时出现了以下错误:
[root@kermit etc]# php-fpm restart
Gracefully shutting down php-fpm . done
Starting php-fpm [21-Jul-2016 18:59:16] NOTICE: PHP message: PHP Warning: PHP Startup: redis: Unable to initialize module
Module compiled with module API=20060613
PHP compiled with module API=20090626
These options need to match
in Unknown on line 0
done
出现这个问题的原因是:执行编译源码包执行phpize的版本与当前php环境中phpize的版本不一致造成的。在这之前我非常清楚需要重新编译安装phpredis,不过我是在原来编译安装phpredis的文件夹里继续编译安装的。所以我进入目录以后执行:
/usr/local/php/bin/phpize #重新使用新phpize生成configure配置文件
./configure --with-php-config=/usr/local/php/bin/php-config #配置
make && make install #安装
但这样依然是不行,说明被编译安装过的文件夹里有一些东西重新编译后不会变化。必须重新编译;即重新解压缩源码包,进入文件夹执行以上安装步骤。不过并不需要更新phpredis版本。