目录
- 环境准备
- 1. PHP 安装 redis 模块
- 2. 安装Redis软件
- 3. 测试是否能Ping Redis
- 4. 配置二级域
- Yii框架环境准备
- Yii配置文件
- 效果
环境准备
1. PHP 安装 redis 模块
// cmd终端输入命令 确认是否安装
$ php -m
[PHP Modules]
...
redis
2. 安装Redis软件
安装好后设置一下配置,比如:密码、端口、后台运行
3. 测试是否能Ping Redis
如果redis不是安装在本地,安装在虚拟机、别的机器,先ping一下查看是否能ping通;
4. 配置二级域
我使用Phpstudy环境工具;
redis插件存取数据默认是80端口,如果改别的端口 ,可能要修改一些配置文件(需要修改端口的请找具体教程 修改配置);
Yii框架环境准备
yii-redis插件,可以手动下载,也可以通过composer下载;
Yii配置文件
需要跨站共享session的三级域,每一个程序都需要配置成一致。
config\web.php
[
'session'=>[
'class' => 'yii\redis\Session',
'keyPrefix'=>'session', // 跨站共享session,前缀必须设置一样
'redis' => 'redis',
'cookieParams' => [
'domain' => 'test.com', // 配置二级域
'httponly' => true,
]
],
'redis' => [
'class' => 'yii\redis\Connection',
'hostname' => '127.0.0.1', // Redis服务器 IP
'port' => 6379, // Redis 端口
'database' => 0,
],
?>
web\index.php
效果
你浏览器请求一次 a.test.com ,在请求一次b.test.com ,发现他们两个三级域 Cookie 中的 PHPSESSIONID 值都是一样的。