【问题标题】:Redis extension Mac OSRedis 扩展 Mac OS
【发布时间】:2016-03-07 09:37:19
【问题描述】:

我从here 安装了 Redis 扩展。我的控制台看到安装了 redis,当我运行 php -i 我看到了

redis Redis Support => enabled Redis Version => 2.2.7

当我尝试创建 Redis 类的实例时,我得到 Fatal error: Uncaught Error: Class 'Redis' not found

phpinfo() 表明我的php.ini 文件在/usr/local/php5/lib/php.ini 中。

我发现解决方案 here 购买它不起作用。我还从php-cli ini 复制了扩展路径。

我尝试使用的所有扩展路径都是:

  • extension = redis.so
  • extension = /usr/local/php5/lib/php/extensions/no-debug-non-zts-20151012/redis.so
  • extension = /usr/local/opt/php55-redis/redis.so

谁能帮帮我?

【问题讨论】:

    标签: php macos redis


    【解决方案1】:

    当您看到 Redis 但仍然失败时,真是太奇怪了。 仅此行就足够了:

    extension = /usr/local/opt/php55-redis/redis.so
    

    然后检查php -v,确保没有发生与redis相关的错误。

    或者尝试通过brew install php55-redis安装(我成功了)。

    -- 请注意,在 OSX El Capitan 中,您必须更新 brew (xcode-select --install)

    --(对于 Apache)确保正确加载了 php5_module:

    1. 打开/etc/apache2/httpd.conf

    2. 搜索php5_module,将当前路径替换为/usr/local/Cellar/php55/5.5.xx/libexec/apache2/libphp5.so (5.5.xx是你输入php -v时的版本)

    如果仍然失败,请重新启动 MAC :((

    -- 如果你通过brew 安装但出错,给我一些cmets。

    【讨论】:

    • 没什么...在我看来它不起作用,因为我的 php-cli 版本是 5.5.32,但我的 apache 版本是 7.0.2。
    • 绝对apache版本与此问题无关。确保 php5_module 在 /etc/apache2/httpd.conf 中正确加载。可能是:/usr/local/Cellar/php55/5.5.32/libexec/apache2/libphp5.so。我更新了我的答案。
    • 我用 php5_module 注释了这一行。当我取消注释并将 /usr/local/Cellar/php55/5.5.32/libexec/apache2/libphp5.so 放在那里时,我的 apache 停止工作。
    • 尝试通过打开的终端确保该文件存在并输入:file ...libphp5.so
    • 我通过brew 安装php70-redis 修复了它。感谢您的帮助。
    猜你喜欢
    • 2018-12-20
    • 2019-08-13
    • 2018-11-24
    • 1970-01-01
    • 2019-05-30
    • 1970-01-01
    • 2023-03-31
    • 1970-01-01
    • 2016-02-02
    相关资源
    最近更新 更多