首先我来描述问题:

编译安装完php的扩展库memcache后,在php.ini文件中添加了memcache.so的配置文件

extension=/usr/local/php5.6.27/lib/php/extensions/no-debug-non-zts-20131226/memcache.so

无论写了memcache.so的绝对路径还是相对路径后,运行./bin/php -m

都看不到PHP中有memcache模块,很奇怪,听说运行phpinfo()可以看看。

配置phpmemcache扩展,Loaded Configuration File (none)_第1张图片

很明显Loaded Configuration File (none),说明php的配置文件php.ini加载不进来

但是

配置phpmemcache扩展,Loaded Configuration File (none)_第2张图片

php.ini配置文件确实在/usr/local/php5.6.27下面啊。

通过分析日志文件发现Loaded Configuration File去了/usr/local/php5.6.27/lib/找了php.ini

既然这样,我就把php.ini复制了一份到/usr/local/php5.6.27/lib/下。

然后尝试

配置phpmemcache扩展,Loaded Configuration File (none)_第3张图片

memcache模块被PHP加载进去了。

但是我们只是成功了PHP命令行模式下测试成功了,我们的服务器nginx用的是php-fpm的fastCGI模式,在服务器更目录下建立脚本运行phpinfo(),还是显示没有找到配置文件

此时,重启php-fpm进程

pkill -9 php-fpm  #先杀掉进程

./sbin/php-fpm    #重启php-fpm