PHP安装redis

#### Linux安装redis
```
    redis官网地址:http://www.redis.io/


     最新版本:2.8.3


     在Linux下安装Redis非常简单,具体步骤如下(官网有说明):


     1、下载源码,解压缩后编译源码。


$ wget http://download.redis.io/releases/redis-2.8.3.tar.gz


$ tar xzf redis-2.8.3.tar.gz


$ cd redis-2.8.3


$ make


     2、编译完成后,在Src目录下,有四个可执行文件redis-server、redis-benchmark、redis-cli和redis.conf。然后拷贝到一个目录下。


mkdir /usr/redis


cp redis-server /usr/redis


cp redis-benchmark /usr/redis


cp redis-cli /usr/redis


cp redis.conf /usr/redis


cd /usr/redis


     3、启动Redis服务。


$ redis-server redis.conf


     4、然后用客户端测试一下是否启动成功。


$ redis-cli


redis> set foo bar


OK


redis> get foo


"bar"




```
#### redis设置密码auth
```
进入redis_cli 客户端,相应执行以下命令  
1.config get requirepass   密码  
2.config set requirepass   密码  
3.重新连接客户端,这是就需要将密码带上 ,  
auth 密码  
4.config rewrite 可以将config set持久化到Redis配置文件中 
```










#### PHP安装redis扩展


```
git clone https://github.com/nicolasff/phpredis


git checkout php7


/usr/local/php7/bin/phpize #找不到phpize的路径可用whereis命令查看:whereis phpize 得到路径


./configure --with-php-config=/usr/local/php/bin/php-config #此处为php-config的路径,可用whereis php-config查看路径


make && make install


然后看到了等字样,就说明安装成功了


Build complete.
Don't forget to run 'make test'.


```




```
安装完成之后,出现下面的安装路径
/usr/local/php/lib/php/extensions/no-debug-non-zts-20151012/


```


```
3、配置php支持


vi /usr/local/php7/etc/php.ini  #编辑配置文件,在最后一行添加以下内容


添加


extension="redis.so"


:wq! #保存退出


```


### 上面那个好像不能用了


```
二 安装php redis扩展
1 下载上传安装包
下载:https://github.com/nicolasff/phpredis/archive/2.2.4.tar.gz
上传phpredis-2.2.4.tar.gz到/usr/local/src目录
 
2 执行命令安装
cd /usr/local/src #进入软件包存放目录
tar zxvf phpredis-2.2.4.tar.gz #解压
cd phpredis-2.2.4 #进入安装目录
/usr/local/php/bin/phpize #用phpize生成configure配置文件
./configure --with-php-config=/usr/local/php/bin/php-config #配置
make #编译
make install #安装
3 查看是否安装
php -m


```


##### 会出现的问题
```
./configure 未找到 说明phpize失败 ,Cannot find autoconf
解决办法 : 
# yum install m4
# yum install autoconf


```
 


<think>好的,我现在需要帮助用户解决在PHP安装Redis扩展的问题。用户之前询问过如何在Windows下安装PHP,现在可能是在同一环境下继续配置Redis。首先,我要确定用户的操作系统,但用户这次的问题没有明确说明是Windows还是其他系统。不过根据历史记录,之前的对话是关于Windows安装PHP,所以可能用户仍在使用Windows。不过,为了全面性,我应该同时覆盖Windows和Linux的安装方法,但可能用户主要需要Windows的指导。 接下来,我需要回忆PHP安装Redis扩展的常见方法。通常有两种方式:使用预编译的DLL文件(Windows)或通过PECL安装(Linux/Unix)。对于Windows用户来说,手动下载DLL并配置php.ini是常见步骤。而Linux用户可能更习惯用pecl install redis。此外,还要确保用户已经安装Redis服务器本身,因为扩展只是让PHP能够与Redis通信,而服务器是必须独立安装的。 用户可能需要分步骤的指导,包括安装Redis服务器和PHP扩展。在Windows下安装Redis服务器可能需要下载微软的版本或者使用WSL,但官方Windows版本已经停止更新,所以可能需要建议用户使用其他方式,比如Docker或者Linux子系统。这部分可能需要谨慎处理,避免让用户感到困惑。 另外,要提醒用户检查PHP的版本和架构(x86或x64),以及对应的Redis扩展版本是否匹配。常见问题包括版本不兼容、扩展未正确加载、php.ini配置错误等。需要列出一些常见问题排查步骤,比如查看phpinfo(),检查日志等。 还需要注意用户是否使用了集成环境,比如XAMPP或WAMP,这些环境可能已经包含了Redis扩展,或者需要特定的配置步骤。例如,用户可能需要将DLL文件放在特定的ext目录,并在php.ini中添加extension=php_redis.dll。 此外,要确保用户启用扩展后,重启Web服务器(如Apache或Nginx)和PHP-FPM服务,以使更改生效。测试部分也很重要,用户需要知道如何编写一个简单的PHP脚本来测试Redis连接是否成功。 可能用户遇到的问题包括找不到DLL文件、路径错误、权限问题,或者Redis服务器没有运行。需要预先考虑到这些情况,并在指导中给出解决建议,比如检查扩展目录是否正确,确认Redis服务是否启动,防火墙设置是否允许连接等。 最后,应该建议用户参考官方文档,并提供相关链接,比如PHP Redis扩展的GitHub仓库或PECL页面,以便用户查阅更多详细信息。同时,提醒用户根据实际环境调整步骤,比如开发环境和生产环境的配置差异,或者使用Composer安装Predis库作为替代方案。 总结下来,回答的结构应该是先介绍两种安装方式(Windows和Linux),然后详细步骤,包括服务器安装、扩展安装、配置、测试,最后是常见问题排查和附加建议。确保语言清晰,步骤详细,避免使用过于专业的术语,让新手也能理解。</think>在Windows和Linux系统下为PHP安装Redis扩展的详细步骤如下,包含服务端配置与客户端扩展安装: ### **一、Redis服务器安装** 1. **Windows环境(适用于开发测试)** - 下载Windows版Redis:[微软维护的分支](https://github.com/microsoftarchive/redis/releases) - 选择`Redis-x64-3.2.100.msi`安装 - 安装后服务自动启动,默认端口`6379` 2. **Linux环境(推荐生产使用)** ```bash sudo apt-get update sudo apt-get install redis-server sudo systemctl enable redis-server ``` ### **二、PHP安装Redis扩展** **Windows系统步骤:** 1. **确认PHP版本信息** ```powershell php -v # 查看PHP版本(如8.1.10) php -i | findstr "Architecture" # 确认x86/x64 ``` 2. **下载匹配的DLL文件** - 访问[PECL Redis下载页](https://pecl.php.net/package/redis) - 选择对应版本(例如:`redis-5.3.7-8.1-ts-vs16-x64.zip`) - 关键命名解析:`ts`表示线程安全,`nts`非线程安全 3. **安装扩展** - 解压后得到`php_redis.dll` - 将DLL文件复制到PHP扩展目录(如`C:\php\ext`) - 修改`php.ini`: ```ini extension=php_redis.dll ``` **Linux系统步骤:** ```bash sudo pecl install redis # 在php.ini中添加 echo "extension=redis.so" | sudo tee -a /etc/php/8.1/cli/php.ini ``` ### **三、验证安装** 1. **检查扩展加载** ```powershell php -m | findstr redis # Windows php -m | grep redis # Linux ``` 2. **编写测试脚本`redis_test.php`** ```php <?php $redis = new Redis(); $redis->connect('127.0.0.1', 6379); echo "Server status: " . ($redis->ping() ? "Connected" : "Failed"); ``` - 浏览器访问显示`Connected`即成功 ### **四、高级配置(可选)** 1. **持久化连接配置** ```php $redis->pconnect('127.0.0.1', 6379, 2.5); ``` 2. **密码认证** ```ini ; php.ini设置 redis.session.lock_expire = 300 redis.session.password = "yourpassword" ``` ### **五、常见问题排查** | 问题现象 | 解决方案 | |-------------------------|-----------------------------------| | `Class 'Redis' not found` | 检查php.ini扩展路径是否正确加载 | | 连接超时 | 确认Redis服务是否启动`netstat -ano | findstr :6379` | | 认证失败 | 检查Redis配置文件`requirepass`设置 | ### **六、多版本管理建议** - 使用Docker容器化方案: ```bash docker run --name redis -p 6379:6379 -d redis ``` - 通过[Xdebug Wizard](https://xdebug.org/wizard)检查扩展兼容性 **附加说明**:若无法编译扩展,可使用纯PHP实现的[Predis库](https://github.com/predis/predis): ```bash composer require predis/predis ``` 建议开发环境与Redis扩展版本保持同步更新,定期检查[Redis扩展GitHub仓库](https://github.com/phpredis/phpredis)的安全公告。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值