【问题标题】:How to configure PhpRedis with PHP 5.5 / Ubuntu 12.0.4如何使用 PHP 5.5 / Ubuntu 12.0.4 配置 PhpRedis
【发布时间】:2013-07-28 15:14:01
【问题描述】:

我最近在 LAMP 堆栈上安装了 PhpRedis,并为 Ubuntu 12.0.4 安装了默认的 PHP 5.3。效果很好。

我随后使用 phpbrew 安装了新的 PHP 5.5 beta 2。现在,当我尝试在 PHP 5.5 上运行我的项目时,出现以下错误:

致命错误:找不到类“Redis”

我尝试将我的 php 5.3 redis.ini 文件复制到 php 5.5 配置并重新启动 Apache:

$ sudo cp /etc/php5/conf.d/redis.ini /opt/phpbrew/php/php-5.5.0beta2/var/db/redis.ini
$ sudo /etc/init.d/apache2 restart

现在我得到一个额外的错误:

警告:PHP 启动:redis: Unable to initialize module 使用模块 API=20090626 编译的模块 PHP 使用模块 API=20121212 编译的这些选项需要在第 0 行的未知中匹配

同样,PhpRedis 在默认的 Ubuntu php 5.3 安装中运行良好,这是使用 apt-get/APT 完成的。

其他信息:

我以前是跟着网上 tut 安装 RedisPhp 的:

http://anton.logvinenko.name/en/blog/how-to-install-redis-and-redis-php-client.html

我使用以下内容通过 phpbrew 安装 php 5.5:

https://gist.github.com/fluxsauce/5282006

一如既往,提前致谢!!!

【问题讨论】:

  • 仅供参考,我昨晚解决了这个问题。我更新了我最初的帖子以解释我是如何修复它的
  • 请注意:Ubuntu 版本是 12.04 而不是 12.0.4,其中 12=2012 和 04=4 月。所以 12.04 是指 2012 年 4 月以后的版本。(Ubuntu 的第一个正式版本 4.10 版本,于 2004 年 10 月推出)

标签: php redis ubuntu-12.04 phpredis


【解决方案1】:

经过反复试验,我修复了这个问题。显然我需要用 phpize5 而不是 phpize 来编译扩展。 Phpize5 使用 PHP 5.5 使用的更新 API 编译扩展。由于我现在在我的工作站上安装了两个 PHP,我还必须指定我正在为哪个版本编译扩展。这是我使用的确切语法:

 $ phpize5 ./configure --with-php-config=/opt/phpbrew/php/php-5.5.0beta2/bin/php-config

【讨论】:

    猜你喜欢
    • 2021-03-13
    • 1970-01-01
    • 1970-01-01
    • 2012-09-15
    • 1970-01-01
    • 1970-01-01
    • 2018-09-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多