Centos7安装php-redis扩展

本文详细介绍了如何在PHP环境中安装并配置Redis扩展,包括下载、编译、安装及配置等步骤,确保PHP能够顺利操作Redis数据库。

 

想要在php中操作redis,那就必须安装php-redis扩展,就比如MySQL一样,php想要操作mysql数据库的话,就必须安装mysql扩展,只是在php安装中就默认安装了mysql扩展了。

步骤一:下载解压

下载:https://github.com/nicolasff/phpredis/archive/2.2.4.tar.gz 
我们把源码包放在一个具体的目录下是一个好习惯,现在我把该源码包放在 /usr/local/src 里边

[lsgozj@localhost ~]# cd /usr/local/src
[lsgozj@localhost src]# wget https://github.com/nicolasff/phpredis/archive/2.2.4.tar.gz

下载完毕之后,解压:

[lsgozj@localhost src]# tar -zxvf 2.2.4.tar.gz
//进入解压后的目录
[lsgozj@localhost src]# cd phpredis-2.2.4

步骤二:编译安装

1、到了这一步,我们要使用安装php时生成的phpize来生成configure配置文件

[lsgozj@localhost phpredis-2.2.4]# /usr/local/php/bin/phpize (或 /usr/bin/phpize) 
//具体用哪个要取决于你的phpize文件所在的目录,这时你应该用 whereis phpize 来查看路径 

执行完上一步,我们就有了 configure 配置文件了。

2、配置
 

其中 php-config 和 phpize 所在的目录是相同的,比如上面我用 /usr/bin/phpize,则在这一步我用 ./configure –with-php-config=/usr/bin/php-config (其实如果你的php是默认安装路径的话,直接 ./configure 就可以了,个人而言吧)

3、编译安装

[lsgozj@localhost phpredis-2.2.4]# make            #编译
[lsgozj@localhost phpredis-2.2.4]# make install #安装

 

步骤三:配置php支持

配置php的配置文件php.ini(具体放在那里可以用 whereis php.ini 来查看),我的配置文件php.ini在/etc/下

[lsgozj@localhost phpredis-2.2.4]# vim /etc/php.ini
//编辑php.ini,在最后一行(或者搜索extension_dir所在行的下一行,这样把扩展配置放在一起是个好习惯嘛)添加一下内容
extension="redis.so"

保存退出

步骤四:重启apache服务器,使配置生效

[lsgozj@localhost phpredis-2.2.4]# systemctl restart httpd.service

重启完之后,检查是否安装完成php-redis扩展

[lsgozj@localhost phpredis-2.2.4]# echo "<?php echo phpinfo() ?>">>/home/www/index.php(这里web目录如果没改的话是在 /var/www/html/)

在浏览器地址栏输入 127.0.0.1/index.php,查看php扩展,如果有redis,则表示安装成功:

<think>我们正在讨论PHPRedis扩展phpredis)的官方文档、安装和使用方法。根据用户需求,我们需要提供清晰的结构化信息。参考引用:[^1]提到了PHP连接Redis的多种方案,包括带密码连接、异常处理、ping测试和条件语句写法。[^2]展示了在Docker环境中安装php-redis扩展的命令,通过下载指定版本的源码并解压到特定目录。[^3]给出了一个使用phpredis扩展连接Redis的详细配置示例,包括主机、端口、连接超时、认证、SSL和退避策略。[^4]提供了在Mac上使用XAMPP并安装phpredis扩展的方法,其中涉及Homebrew的安装命令。由于用户要求的是官方文档、安装和使用方法,我们将按照以下结构组织回答:1.官方文档资源2.安装方法(不同环境)3.基本使用方法(连接、认证、基本命令)4.常见问题(如认证错误)注意:用户特别提到“官方文档”,因此首先提供官方资源链接。步骤:1.官方文档:phpredis的GitHub仓库是官方维护的,文档在README中。2.安装方法:包括Linux(编译安装)、Docker、Mac(使用pecl或brew)和Windows。3.使用方法:连接Redis、认证、执行命令(如set,get)以及配置选项。4.常见问题:如认证失败(NOAUTH)等。根据引用内容,我们将整合相关信息。注意:引用[^2]中的安装命令是针对Docker环境的,引用[^4]是针对Mac环境的,引用[^1]和[^3]是关于使用方法的。由于用户没有指定环境,我们将覆盖常见环境(Linux、Mac、Windows、Docker)的安装方法。开始组织答案:</think>### PHP Redis扩展 (phpredis) 官方文档与使用指南 #### 一、官方文档资源 phpredis 的官方文档托管在 GitHub 仓库中,包含详细的使用方法和配置说明: 📚 [phpredis 官方 GitHub 文档](https://github.com/phpredis/phpredis) 内容涵盖: - 所有 Redis 命令的 PHP 语法示例 - 连接配置参数详解 - 序列化/反序列化配置 - 集群/哨兵模式支持 - 异常处理机制 #### 二、安装方法 ##### 1. Linux/Unix 环境 (编译安装) ```bash # 安装依赖 sudo apt-get install php-dev # Ubuntu sudo yum install php-devel # CentOS # 下载编译 pecl install redis # 或手动编译 git clone https://github.com/phpredis/phpredis.git cd phpredis phpize ./configure make && make install # 添加扩展配置 echo "extension=redis.so" >> /etc/php/php.ini ``` ##### 2. Docker 环境 ([^2]) ```Dockerfile FROM php:8.2-apache RUN pecl install redis && docker-php-ext-enable redis # 或源码安装 RUN curl -L https://github.com/phpredis/phpredis/archive/5.3.7.tar.gz | tar xz \ && cd phpredis-5.3.7 \ && phpize && ./configure && make && make install ``` ##### 3. Mac 环境 ([^4]) ```bash # 通过 Homebrew brew install php-redis # 或 XAMPP 集成 sudo /Applications/XAMPP/bin/pecl install redis ``` ##### 4. Windows 环境 下载预编译 DLL: [PECL Windows 版本库](https://windows.php.net/downloads/pecl/snaps/redis/) 放置 `php_redis.dll` 到扩展目录并修改 `php.ini`: ```ini extension=php_redis.dll ``` #### 三、基本使用方法 ([^1], [^3]) ```php <?php $redis = new Redis(); // 基础连接 $redis->connect('127.0.0.1', 6379, 2.5); // IP, 端口, 超时(秒) // 带密码认证 ([^1]) $redis->auth('your_password'); // 使用配置数组连接 (推荐) $redis = new Redis([ 'host' => '127.0.0.1', 'port' => 6379, 'auth' => 'password', // 密码 'connectTimeout' => 2.5, // 连接超时 'persistent' => true, // 持久连接 'ssl' => ['verify_peer' => false] // SSL配置 ]); // 写入数据 $redis->set('key', 'value'); $redis->expire('key', 3600); // 设置过期 // 读取数据 echo $redis->get('key'); // 输出: value // 哈希操作 $redis->hMSet('user:1', ['name' => 'Alice', 'age' => 30]); print_r($redis->hGetAll('user:1')); // 关闭连接 $redis->close(); ?> ``` #### 四、常见问题解决 1. **认证失败 `NOAUTH` ([^1])** ```php // 解决方案:显式调用 auth() if (!$redis->auth('password')) { throw new Exception("认证失败"); } ``` 2. **扩展未加载** 检查 `phpinfo()` 输出确认 `redis` 扩展已启用,重启 Web 服务。 3. **连接超时** ```php $redis->setOption(Redis::OPT_READ_TIMEOUT, -1); // 禁用超时 ``` 4. **序列化问题** ```php $redis->setOption(Redis::OPT_SERIALIZER, Redis::SERIALIZER_PHP); ``` #### 五、高级功能 - **管道操作** 提升批量命令性能: ```php $redis->pipeline() ->set('k1', 'v1') ->get('k1') ->expire('k1', 10) ->exec(); ``` - **发布/订阅**: ```php $redis->subscribe(['channel'], function ($redis, $channel, $msg) { echo "收到消息: $msg"; }); ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

微个日光日

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值