安装 php 的 redis 扩展问题,求指教

2015-08-24 23:05:40 +08:00
 Jaeger
ubuntu14 下 Tengine + php-fpm 环境,现我想要安装 php 的 redis 扩展,通过 apt-get install php5-redis 命令安装 redis 扩展,安装完成重启后,通过 php -m 查看可以看到 redis 扩展,但在网页中通过 phpinfo ()查看,却看不到 redis 扩展,请问该如何解决,谢谢!
3560 次点击
所在节点    PHP
16 条回复
printempw
2015-08-25 06:46:28 +08:00
试试编译安装?
Kokororin
2015-08-25 08:58:48 +08:00
试试一键包?
teaman
2015-08-25 09:14:02 +08:00
配置文件里有做相应修改吗?
LaughingMeMe
2015-08-25 09:27:10 +08:00
应该是配置文件没有修改对,当初装的时候我也遇到过
Jaeger
2015-08-25 09:36:20 +08:00
@teaman 在命令行运行 php --ini ,可以看到
Configuration File (php.ini ) Path: /etc/php5/cli
Loaded Configuration File: /etc/php5/cli/php.ini
Scan for additional .ini files in: /etc/php5/cli/conf.d
Additional .ini files parsed: /etc/php5/cli/conf.d/05-opcache.ini,
/etc/php5/cli/conf.d/10-pdo.ini,
/etc/php5/cli/conf.d/20-json.ini,
/etc/php5/cli/conf.d/20-readline.ini,
/etc/php5/cli/conf.d/20-redis.ini

可以看到已经加载了 redis 配置,并且运行 php -m 也可以看到 redis 模块。
windygoose
2015-08-25 09:40:07 +08:00
看看两个是不是用的同一个 php
Jaeger
2015-08-25 09:40:09 +08:00
@printempw 通过 apt-get install php5-redis 以及 pecl install redis 以及编译安装都试过,但貌似都智能通过 php -m 可以看到 redis 模块 ,在命令行下可以使用 php redis ,但在浏览器里面使用 phpinfo ()却看不到 redis 模块。
Jaeger
2015-08-25 09:47:21 +08:00
@windygoose 在 phpinfo ()中可以看到 Loaded Configuration File /etc/php.ini ,我在 /etc/php.ini 中也加入了 extension=redis.so 这句话,重启后,查看 phpinfo ()依旧没有看到 redis 模块。
Blask
2015-08-25 09:47:29 +08:00
重启下 php-fpm
Blask
2015-08-25 09:50:07 +08:00
收回上面的话, 应该不是一个 php 的可能性大点, 看下 phpinfo 里加载的 php.ini 是不是你配置的那个
timsims
2015-08-25 10:23:06 +08:00
因为
php-fpm 是调用 /etc/php5/fpm/conf.d/

命令行是调用 /etc/php5/cli/conf.d/
timsims
2015-08-25 10:27:49 +08:00
php-fpm 调用的 php.ini 是 /etc/php5/fpm/php.ini

通过 apt-get install 的 php 扩展后,会在 /etc/php5/mods-available/ 下生成对应的 xxx.ini (譬如你这里就是 redis.ini )

LZ 只要进 /etc/php5/fpm/conf.d/ 创建软链 ln -s ../../mods-available/redis.ini redis.ini ,然后重启 php-fpm 即可
realpg
2015-08-25 12:15:11 +08:00
@Jaeger cli 看到没 你这个是 CLI 的配置 FPM 的配置在 FPM 目录下
mingyun
2015-08-30 16:08:26 +08:00
@timsims
lbp0200
2015-09-06 16:09:25 +08:00
sudo php5enmod redis
Jaeger
2016-06-08 14:48:11 +08:00
最后解决方法,手动编译,指定 php-config(--with-php-config=/usr/local/php/bin/php-config),搞定。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/215702

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX