报错日志:
日志如下:
验证码的null,是从shiro.getSession.getAttribute("验证码key值");
单台服务器的流程上,先将验证码放到session里,之后在登录时,将session里的验证码同输入的验证码进行匹配,匹配不上,就报错,不让登录。
多服务器时,导致这问题的原因是:session 没有在两台服务器上共享。
验证码存进A服务器,取的时候,是从B服务器去拿。即用户的操作,分开在两台服务器上,没有负载均衡。
由于该环境是测试环境,在内网操作。故不走nginx的负载均衡。
最后是运维通过修改配置(具体不懂)实现了session的分发。
另外可了解的是nginx的负载均衡:
【nginx】配置Nginx实现负载均衡
本文链接:https://my.lmcjl.com/post/7658.html
展开阅读全文
4 评论