Rumah >pembangunan bahagian belakang >tutorial php >php -m与phpinfo()不同【memcache扩展】
事情起因,因要升级 openssl(openssl升级这里不表) ,所以在升级后对 php 也进行了从新编译,编译成功。
发现没有安装,memcache 扩展,从新编译安装了一下,显示的安装成功,但是 phpinfo() 不显示 memcache 扩展
查找了,php.ini 文档当中,也有 extension="memcache.so" 很奇怪的问题,
查找 phpinfo() 当中 extension_dir 的目录,也存在 memcache.so,
重启了 php-fpm 也不显示(或者 apache 之类的)
后使用 php -m 可以加载出 memcache,而使用 phpinfo() 没有 memcache
[root@x ~]# php -m [PHP Modules] bcmath Core ctype curl date dom ereg filter ftp gd gettext hash iconv json libxml mbstring mcrypt memcache
应该是 php-cli 与 php-fpm 调用了不同的,php.ini 的配置文件
[root@x ~]# php -i | grep php.ini Configuration File (php.ini) Path => /usr/local/php/etc Loaded Configuration File => /usr/local/php/etc/php.ini
phpinfo.php 这个是新创建了php文件,里面写了 phpinfo()
[root@x ~]# curl http://127.0.0.1/phpinfo.php | grep php.ini # 可以看到和上面的返回不一样
创建符号连接到 /usr/local/php/lib 下
[root@x ~]# ln -s /usr/local/php/etc/php.ini /usr/local/php/lib/php.ini
PS:以上是后期编辑的,显示的可能不是当时发生的情况,问题排查方法是没问题,另外其它的针对 php memcache 扩展 排查方法。
which php 看一下是不是多php版本引起,php -m 的等问题
php-cli 与 php-fpm 是同一个 php 版本或者 php.ini 吗(本次发生的不同的 php.ini)
php apache nginx memcache 等各种重启看一下
by bin
Atas ialah kandungan terperinci php -m与phpinfo()不同【memcache扩展】. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!