php5-fpm完全忽略redis ini文件

我用pecl install redis安装了php5 pecl扩展,在/etc/php5/fpm/conf.d/21-redis.ini/etc/php5/cli/conf.d/21-redis.ini添加了extension=redis.so /etc/php5/cli/conf.d/21-redis.ini 。 然后我重新启动了php5-fpmnginx

现在php -m | grep redis php -m | grep redis显示我redis安装正确的cli,但phpinfo (使用nginx)显示没有redis和Additional .ini files parsed列表下:

/etc/php5/fpm/conf.d/00-ioncube.ini,/etc/php5/fpm/conf.d/05-opcache.ini,/etc/php5/fpm/conf.d/10-mysqlnd.ini ,/etc/php5/fpm/conf.d/10-pdo.ini,/etc/php5/fpm/conf.d/20-curl.ini,/etc/php5/fpm/conf.d/20-json。 ini,/etc/php5/fpm/conf.d/20-mysql.ini,/etc/php5/fpm/conf.d/20-mysqli.ini,/etc/php5/fpm/conf.d/20-pdo_mysql .ini,/etc/php5/fpm/conf.d/20-readline.ini

但是相同的目录包含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扩展?

这是因为php5-fpm主进程死了,但工人没有。 service php5-fpm restart没有更新它们。

我手动杀死了剩下的工人,并重新启动了php-fpm。 现在一切正常。