首先要明确session和cookie的区别。浏览器端存的是cookie每次浏览器发请求到服务端是http 报文头是会自动加上你的cookie信息的。服务端拿着用户的cookie作为key去存储里找对应的value(session). 同一域名下的网站的cookie都是一样的。所以无论几台服务器,无论请求分配到哪一台服务器上同一用户的cookie是不变的。也就是说cookie对应的session也是唯一的。 所以,这里只要保证多台业务服务器访问同一个redis服务器(或集群)就行了。
修改php会话缓存机制改成Redis即可,这里有三种方式:
1,修改php的配置文件 修改php.ini文件session.save_handler = redis
session.save_path = "tcp://172.16.1.51:6379"
//session.save_path = "tcp://172.16.1.51:6379?auth=123123"如果redis配置的密码需要写成这种方式,填写redis的密码
session.auto_start = 1
注释php-fpm.d/www.conf里面的两条内容
;php_value[session.save_handler] = files
;php_value[session.save_path] = /var/lib/php/session
更改完成之后一定要重启php-fpm服务
2,更改对应的代码文件直接在对应的代码中加上下面两句话
ini_set("session.save_handler","redis");
ini_set("session.save_path","tcp://172.16.1.51:6379");
//如果redis设置了密码需要改下面一句为
//ini_set("session.save_path","tcp://172.16.1.51:6379?auth=123123");
测试
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?