输入验证码,一直报错验证码错误(内网多服务器)

报错日志:

日志如下:

验证码的null,是从shiro.getSession.getAttribute("验证码key值");

单台服务器的流程上,先将验证码放到session里,之后在登录时,将session里的验证码同输入的验证码进行匹配,匹配不上,就报错,不让登录。

多服务器时,导致这问题的原因是:session 没有在两台服务器上共享。

验证码存进A服务器,取的时候,是从B服务器去拿。即用户的操作,分开在两台服务器上,没有负载均衡。

由于该环境是测试环境,在内网操作。故不走nginx的负载均衡。

最后是运维通过修改配置(具体不懂)实现了session的分发。

另外可了解的是nginx的负载均衡:

【nginx】配置Nginx实现负载均衡

本文链接:https://my.lmcjl.com/post/7658.html

展开阅读全文

4 评论

留下您的评论.