如何为PHP 7安装Redis扩展

34
10个回答

34

使用命令可以指定phpredis的redis版本吗? - undefined

29

昨天我在我的Vagrant虚拟机(/etc/php/7.0)中安装了Redis:

  • sudo pecl install redis
  • sudo service php7.0-fpm restart

(可选步骤:运行php -m来列出php模块)

现在,你可以在你的php代码中使用Redis类。


11
我必须做一些额外的工作:在执行 sudo pecl install redis 之后,执行以下命令:echo "extension=redis.so" > /etc/php/7.0/mods-available/redis.ini && ln -sf /etc/php/7.0/mods-available/redis.ini /etc/php/7.0/fpm/conf.d/20-redis.ini && ln -sf /etc/php/7.0/mods-available/redis.ini /etc/php/7.0/cli/conf.d/20-redis.ini。然后执行 sudo service php7.0-fpm restart && sudo apache2ctl restart 命令,成功重启。 - colidyre
1
如果您使用的是带有Nginx的PHP 7.3:则执行以下命令:sudo pecl install redis: echo "extension=redis.so" > /etc/php/7.3/mods-available/redis.ini && ln -sf /etc/php/7.3/mods-available/redis.ini /etc/php/7.3/fpm/conf.d/20-redis.ini && ln -sf /etc/php/7.3/mods-available/redis.ini /etc/php/7.3/cli/conf.d/20-redis.ini。然后执行 sudo service php7.0-fpm restart & sudo service nginx restart - Muhammad Usama

18

抱歉,目前无法提供该套餐。 - undefined
@famas23 你可以在https://packages.ubuntu.com/focal/php-redis找到相关信息。 - undefined

8
如果您恰好在Docker容器中,请执行以下操作:
pecl install redis
docker-php-ext-enable redis

在大多数情况下会起作用。


这个确实可行 - 我正在使用php:7.3.33-apache作为我的docker镜像的基础。 - Hugo

5

我刚在CentOS 7上运行了下面的命令。

yum install php-redis

我解决了我的问题,并手动将配置添加到了php.ini中。

你需要在php.ini中添加"extension=redis.so"。


5

对于使用MAMP的人来说,想要从MAMP内部执行pecl安装程序。此方法遵循https://github.com/phpredis/phpredis/blob/develop/INSTALL.markdown中的安装步骤。

/Applications/MAMP/bin/php/php7.3.9/bin/pecl install redis

将php版本更改为您的版本。

安装成功后,可能会显示以下内容:

configuration option "php_ini" is not set to php.ini location
You should add "extension=redis.so" to php.ini

所以你需要打开你的 php.ini 文件,并添加 extension=redis.so

对于我来说,这个文件夹在:/Applications/MAMP/bin/php/php7.3.9/conf/php.ini

重启 MAMP 后,在此页面上将会看到 redis 模块(端口可能不同):http://localhost:8888/MAMP/index.php?language=English&page=phpinfo


3
对于基于Debian的Linux发行版,您需要安装php-devpkg-php-tools软件包来从phpredis源代码构建本机PHP扩展。
sudo apt update && \
    sudo apt install php-dev pkg-php-tools --yes && \
    sudo pecl channel-update pecl.php.net && \
    sudo pecl install redis

3
用一个命令安装Redis:
sudo apt-get install php7.0-redis

1

无法工作!我正在使用php 7.2.7,而最后可用的版本是7.1.8。 - rohitcoder
1
@rohitcoder 你可以试试这个 https://github.com/jrquick17/php-extension-library - Jeremy

0

我正在使用PHP8与Nginx,下面的命令适用于我。

wget https://github.com/phpredis/phpredis/archive/refs/tags/5.3.7.tar.gz
tar xf 5.3.7.tar.gz
cd phpredis-5.3.7
phpize
./configure
make
make install
echo “extension=redis.so” >> /etc/php.ini

为了验证phpredis是否已激活,您可以像这样检查您的php配置。

php -i | grep redis

别忘了重新启动你的PHP-FPM


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接