PHP7 安装 Redis 扩展完整教程(Linux 与 Windows)
本文详细介绍了在 Linux 和 Windows 系统下为 PHP7 安装 Redis 扩展的具体步骤。无论是通过源码编译安装,还是直接加载 DLL 文件,关键在于正确修改 php.ini 配置文件并重启 Web 服务,从而让 PHP 支持 Redis 操作。
Linux 平台安装 Redis 扩展
在 Linux 系统中,通常需要通过源码编译的方式来安装 PHP 的 Redis 扩展。请确保服务器上已安装 gcc、make 以及 PHP 的开发头文件。
第1步:下载并解压 Redis 扩展源码
首先从 GitHub 获取适配 PHP7 的源码包。注意根据实际的 PHP 版本选择对应的分支(如 php7、php8 等),此处以适配 PHP7 的版本为例:
wget -c https://github.com/phpredis/phpredis/archive/php7.zip
unzip php7.zip
cd phpredis-php7
第2步:编译安装
进入解压后的目录,执行以下命令生成配置脚本并进行编译安装。请将 /YouPath 替换为你实际的 PHP 安装路径:
/YouPath/bin/phpize
./configure --with-php-config=/YouPath/bin/php-config
make
sudo make install
phpize 命令,请先安装对应版本的 php-devel 或 php-dev 包。第3步:配置 php.ini
编译完成后,需要在 php.ini 文件中启用该扩展。找到 php.ini 文件(通常位于 /etc/php/7.x/cli/php.ini 或 /etc/php/7.x/apache2/php.ini),在末尾添加以下行:
extension=redis.so
第4步:重启服务并验证
保存配置文件后,重启 Apache 或 Nginx 服务以加载新配置:
# Apache
sudo systemctl restart apache2
# Nginx + PHP-FPM
sudo systemctl restart php7.4-fpm
随后可通过 phpinfo() 函数查看是否成功加载了 Redis 扩展,或在命令行运行 php -m | grep redis 检查模块是否存在。
Windows 平台安装 Redis 扩展
在 Windows 环境下,安装过程相对简单,主要依赖官方提供的预编译 DLL 文件。
第1步:获取合适的 DLL 文件
根据你使用的 PHP 版本(NTS/TS)、操作系统架构(32位/64位),从可靠来源下载对应的 php_redis.dll 文件。请注意区分线程安全(Thread Safe)与非线程安全版本,PHP 5.3+ 推荐使用非线程安全版(NTS),但具体需参照你的 PHP 配置。
第2步:放置文件并配置
将下载的 php_redis.dll 复制到 PHP 的 ext 目录中。例如:C:\php\ext\php_redis.dll。
打开 php.ini 文件,在 [PHP] 部分或动态扩展加载区域添加以下配置:
extension=php_redis.dll
第3步:重启 Web 服务器
重启 Apache 或 IIS 服务,使配置生效。之后可以通过 phpinfo() 页面确认 redis 模块已出现在“Modules”列表中。
基础使用示例
安装完成后,即可在 PHP 代码中实例化 Redis 类进行操作。以下是一个简单的投票计数场景示例,展示了如何连接 Redis、读取数据、增加计数并同步至数据库:
<?php
// 获取文章ID并进行安全过滤
$aid = isset($_GET['aid']) ? preg_replace("/[^0-9]/", "", $_GET['aid']) : 0;
if ($aid > 0) {
// 创建 Redis 连接
$r = new Redis();
$r->connect('127.0.0.1', 6379);
// 设置最大缓存阈值,达到后写入 MySQL
$update_till_num = 50;
$key = 'count_' . $aid;
// 获取当前计数
$this_click_num = $r->get($key);
if ($this_click_num === false) {
$this_click_num = 0;
}
// 递增计数
$new_count = $this_click_num + 1;
$r->set($key, $new_count);
// 若超过阈值,则同步到数据库
if ($this_click_num >= $update_till_num) {
// 假设已有数据库连接对象 $db
// $db->ExecuteNoneQuery(
// "UPDATE `table_name` SET `view_count` = view_count + {$update_till_num} WHERE `id` = {$aid}"
// );
// 重置 Redis 中的计数器
$r->set($key, 0);
}
// 可选:设置键的过期时间(7天)
// $r->setTimeout($key, 7 * 24 * 60 * 60);
echo $new_count;
}
?
以上就是 PHP7 安装 Redis 扩展的详细内容,更多关于 PHP Redis 扩展使用技巧的资料请关注本站其它相关文章!
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









