ThinkPHP5 redis+session 实现分布式会话共享

2021-09-06 10:01:37 浏览数 (1)

  • 背景 之前在进行多服务器配置负载均衡时; 注意到会出现 Session 会话(一般用于用户登录信息保存)无法使用的情况; 而成熟的开发者都是建议使用缓存中间件,如 redis/memcache 尤以 Redis Session 推荐之多 此处做一下在 ThinkPHP5 框架下的配置操作…
  • 环境
代码语言:javascript复制
ThinkPHP版本:	ThinkPHP5.1.40
操作系统:		Linux/windows10
  • 配置

前提当然是有可供使用的 Redis 服务器(建议配置为 Redis集群,冗余保证访问正常)

  1. 首先保证 Redis 服务的正常启动,可访问

2. 然后,是要配置 redis 扩展(网上一找一大把)

3. 直接打开配置文件 :"config/session.php",补充如下配置信息:

代码语言:javascript复制
'type'    => 'redis',     // 驱动方式
'host'    => '127.0.0.1', // redis主机
'port'    => 6379,        // redis端口
 //'password' => '',

当然,如果 redis服务有设置 账号及密码可继续补充,对于 IP地址、端口号,可根据实际情况调整!

4. 效果

可到 Redis 客户端确定存入与否

  • 最终完成的效果:
代码语言:javascript复制
 1. 相当于 Redis 存储了登录信息
 2. 作为中间的会话提供者,可保证多台服务器的准确访问
  • 附录:

如果不是 ThinkPHP5 框架,可以考虑修改 "php.ini" 配置文件即可

0 人点赞