码迷,mamicode.com
首页 > Web开发 > 详细

php安装扩展redis淌过的坑

时间:2017-09-20 22:04:50      阅读:234      评论:0      收藏:0      [点我收藏+]

标签:lib   name   环境   extension   版本   cal   relative   make   编辑   

php安装扩展redis淌过的坑

欢迎使用 小书匠(xiaoshujiang)编辑器,您可以通过设置里的修改模板来改变新建文章的内容。

cd /usr/local/src/
wget https://github.com/nicolasff/phpredis/archive/2.2.4.tar.gz
tar zxvf phpredis-2.2.4.tar.gz
cd  2.2.4.tar.gz
/usr/local/bin/phpize
 ./configure --with-php-config=/usr/bin/php-config
make
make install

安装成功返回所装扩展路径 "/usr/local/lib/php/extensions/no-debug-non-zts-20131226/"

php.ini修改:

extension_dir = "/usr/local/lib/php/extensions/no-debug-non-zts-20131226/"
extension=redis.so

服务重启:

/usr/local/nginx/sbin/nginx -s reload
/usr/local/sbin/php-fpm restart

然后我又报了新错:

NOTICE: PHP message: PHP Warning:  PHP Startup: redis: Unable to initialize module
Module compiled with module API=20090626
PHP    compiled with module API=20131226

网上查了番,貌似执行编译源码包执行phpize的版本与当前php环境中phpize的版本不一致造成的,执行了 phpize update,重新安装了一遍。

此时我web运行打印的phpinfo()信息没有找到redis扩展,但是我在liunx下 ‘php -m’看到确实已经安装了,查阅了很多资料,原来是web与cli的php.ini可能不同。

补充知识点:

  • cli:是命令行模式时加载的.ini配置

  • fpm:是通过fastcig server和web server交互时加载的.ini配置
    -问题二:

  • cli: php -r "phpinfo();"

  • fpm: 访问phpinfo()的脚本

$ find / -name php.ini
/etc/php.ini
/usr/local/lib/php.ini

看到两条记录,为了保持一致,将cli的配置覆盖web的配置:

cp /usr/local/lib/php.ini /etc/php.ini

php安装扩展redis淌过的坑

标签:lib   name   环境   extension   版本   cal   relative   make   编辑   

原文地址:http://www.cnblogs.com/followyou/p/7565104.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!