负载均衡集群通过配置redis方式保持会话
nginx和php安装省略 查看php redis访问支持 [root@web01 ~]# rpm -qa|grep redis php71w-pecl-redis-3.1.6-1.w7.x86_64 ##安装配置redis 10.0.0.51 [root@db01 ~]# yum install redis -y [root@db01 ~]# sed -i '/^bind/c bind 127.0.0.1 172.16.1.51' /etc/redis.conf [root@db01 ~]# systemctl start redis [root@db01 ~]# systemctl enable redis [root@db01 ~]# netstat -lntup|grep redis 查看redis中的数据: [root@db01 ~]# redis-cli 127.0.0.1:6379> keys * 分别将web01,web02的php应用服务器的session信息、修改存储至Redis中(/etc/php.ini) [root@web01 ~]# vim /etc/php.ini session.save_handler = redis session.save_path = "tcp://172.16.1.51:6379?weight=1&timeout=2.5" Redis有密码的配置方法 session.save_path = "tcp://172.16.1.51:6379?auth=oldboy123" 使用;注释如下两行, [root@web01 ~]# vim /etc/php-fpm.d/www.conf ;php_value[session.save_handler] = files ;php_value[session.save_path] = /var/lib/php/session 重启php-fpm [root@web01 ~]# systemctl restart php-fpm ==============注意;web02的特殊,大家可以自己跟web01一样配置======================= php74,注意路径: [root@web02 ~]# cat /etc/opt/remi/php74/php.d/50-redis.ini session.save_handler = redis session.save_path = "tcp://db01.etiantian.org:6379?weight=1" 使用;注释如下两行, vim /etc/opt/remi/php74/php.ini session.save_handler = file session.save_path = "/tmp" 使用;注释如下两行, [root@web02 ~]# vim /etc/opt/remi/php74/php-fpm.d/www.conf ;php_value[session.save_handler] = files ;php_value[session.save_path] = /var/lib/php/session systemctl restart php74-php-fpm.service php.ini有配置session 设置 PHP 的 session 过期时间 打开 php.ini 配置文件,修改如下三个配置: 1、session.use_cookies 把这个的值设置为1,利用 cookie 来传递 sessionid 2、session.cookie_lifetime 这个代表 SessionID 在客户端 Cookie 储存的时间(秒),默认是0,代表浏览器一关闭 SessionID 就作废! 那么我们把它设置为自定义如:86400 即 1 天。 3、session.gc_maxlifetime 这个是 Session 数据在服务器端储存的时间,如果超过这个时间,那么 Session 数据就自动删除!也可以设置为 86400 即 1 天。 注意: 到了设置的时间后 gc 并不一定会工作,因为 gc 的启动是有一个概率的。 概率 = session.gc_probaility / session.gc_divisor,默认为 1/100,所以每 100 个请求过来才会有 1 次触发 gc 去工作。 ————————————————
<< 上一篇
下一篇 >>
网友留言(0 条)