php安装redis扩展成功但是显示找不到redis.so

wget redis 解压,
phpize 生成配置,
然后 ./configure --with-php-config=/usr/bin/php-config
配置 php.ini然后 extension='redis.so', redis.so文件在 /usr/lib/php/modules/里面存在

然后 php -m redis也显示安装成功,

在一个脚本里面 new Redis()时候但是就是在启动时候显示找不到
/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/redis.so'

阅读 8.8k
3 个回答

你安装的PHP和 --with-php-config= 这个地方的配置不相符

/usr/lib/php/modules/ 里面存在,还是没有进PHP的扩展目录,明显是编译的时候
--with-php-config= 这个值填写错了

要区分你是加到cli的配置还是php-fpm里面的配置,他们拥有独立的php.ini文件。当你在终端执行 php -m所看到的是cli模型下的扩展列表。

php-fpm在网页里面使用:

// 使用print_r或者var_dump(),输出。
get_loaded_extensions()

检查都加在了哪些扩展。修改php-fpm的php.ini,记得restart php-fpm哟。

在php.ini里添加extions_dir
image.png

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题