【问题标题】:Install phpredis MAC OSX安装phpredis MAC OSX
【发布时间】:2019-01-25 05:47:08
【问题描述】:

谁能帮我在 MAC OSX 中安装 php-redis。

brew install php-redis

不工作。

pecl install php-redis

也无法正常工作 -

包名/包文件“php-redis”无效。

自制错误:

homebrew_error

【问题讨论】:

  • 应该是pecl install redis,并且“不工作”非常模糊。给我们您遇到的错误/困难,也许我们可以在 Homebrew 方面提供帮助。
  • 您好,我在这里的图片中插入了自制软件安装问题:i.stack.imgur.com/jJgg7.png 我需要安装 php-redis。已经安装了 redis: brew install redis 工作正常。
  • 看这里但适应Redis stackoverflow.com/a/50529784/2836621
  • @MarkSetchell 点你写“brew options this”的地方,php-redis 没有选项。

标签: php macos redis php-7.2


【解决方案1】:
git clone https://www.github.com/phpredis/phpredis.git
cd phpredis
phpize && ./configure && make && sudo make install

在你的 php.ini 中添加extension=redis.so

brew services restart php@7.2
make test

你可以检查是否工作

php -r "if (new Redis() == true){ echo \"\r\n OK \r\n\"; }"

【讨论】:

  • 嗨,这是一个很好的安装phpredis的指南,但是我应该把phpredis目录放在哪里?
  • @Ivan : 你可以在下载文件夹中下载
  • 如果它在 OSX Mojave 上不适合你,这个人就是你的朋友:stackoverflow.com/a/52530212/766570
  • 当我将完整路径或 redis.so 放入我的 php.ini 时,它就可以工作了
【解决方案2】:

截至 2019 年,使用自制 php7.2 及更高版本,pecl 现在默认与 php 二进制文件一起安装。

要亲自查看,请输入which pecl

安装步骤

  1. 检查你的redis版本,然后找到合适的扩展here版本。

  2. 如果不熟悉 pecl,请输入 pecl 以查看选项。

  3. 问题pecl install redis-5.0.2。 (或您的版本)。如果您不确定,请在询问的每个问题中输入“否”。

  4. 如果成功,请检查它在以下位置创建的新文件:/usr/local/lib/php/pecl/20180731/redis.so

  5. 安装程序会将extension="redis.so" 添加到您的 php ini 顶部。 通过打开文件/usr/local/etc/php/7.3/php.ini 进行检查。 (假设你在那里使用 7.3)

  6. brew services restart php.

  7. php -i | grep Redis

Redis Support => enabled
Redis Version => 5.0.2

这是我在 2019 年 9 月刚刚做的,它对我有用。

【讨论】:

  • 同样在升级到 PHP 7.4 后,我不得不用 pecl 重新安装 redis ext:pecl uninstall redis,然后是pecl install redis
  • 对我也有效,也适用于 PHP 7.3。谢谢
  • 如果你得到:Warning: mkdir(): File exists in System.php on line 294 错误,运行 pecl config-get ext_dir | pbcopy,然后 mkdir -p {粘贴剪贴板值},然后 sudo pecl install redis-5.3.2
  • pecl install redis 没有sudo 对我不起作用:superuser.com/a/1707730/79629
【解决方案3】:

如果上面mwal 写的内容不起作用(请先尝试他/她的答案),

首先,尝试先卸载(如果你有但坏了):

sudo pecl uninstall redis 

然后运行:

sudo pecl install redis

然后,在 php.ini 中,使用扩展名的完整路径。

我的是 /usr/local/Cellar/php@7.3/7.3.21/pecl/20180731/redis.so(假设您使用的是 php@7.3)

所以在我的 php.ini 文件的顶部是这样的:

extension="/usr/local/Cellar/php@7.3/7.3.21/pecl/20180731/redis.so"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-08-07
    • 1970-01-01
    • 1970-01-01
    • 2016-07-13
    • 2019-12-15
    • 2015-09-01
    • 2013-01-27
    • 2010-11-11
    相关资源
    最近更新 更多