我已经在pecl install redis中安装了extension=redis.so扩展,将extension=redis.so添加到/etc/php5/fpm/conf.d/21-redis.ini和/etc/php5/cli/conf.d/21-redis.ini中。然后我重新启动了php5-fpm和nginx。
现在,php -m | grep redis向我展示了cli安装得很好,但是phpinfo (使用nginx)没有显示redis,在Additional .ini files parsed列表下:
/etc/php5 5/fpm/10-mysqin.ini,/etc/php5 5/fpm 5/con.d/20-curl.ini,/etc/php5 5/fpm/conf.d/20-curl.ini,/etc/php5 5/fpm/con.d/20-json.ini,/etc/php5 5/fpm/con.d/20-json.ini,/etc/php5 5/fpm/con.d/20-myl.ini,/etc/php5 5/fpm/conf.d.d/20-mysqli.ini,/etc/php5 5/fpm/conf.d.d/20-pdo_mysql.ini,/etc/php5 5/fpm/conf.d.d/20-readline.ini
但是相同的dir包含21-redis.ini,由于某种原因,它会被忽略:
# ls -1 /etc/php5/fpm/conf.d/
00-ioncube.ini
05-opcache.ini
10-mysqlnd.ini
10-pdo.ini
20-curl.ini
20-json.ini
20-mysql.ini
20-mysqli.ini
20-pdo_mysql.ini
20-readline.ini
21-redis.ini该文件的内容与预期的一样:
# cat /etc/php5/fpm/conf.d/21-redis.ini
extension=redis.so而且它是世界可读的。
/var/log/php5-fpm.log没有错误,/var/log/syslog也没有错误。
为什么php-fpm不加载redis扩展?
发布于 2015-08-12 10:59:42
这是因为php5-fpm主进程死了,但是工人没有。service php5-fpm restart没有更新它们。
我手动杀死了剩下的工人,并重新启动了php。现在一切都成功了。
https://stackoverflow.com/questions/31960651
复制相似问题