zoukankan      html  css  js  c++  java
  • 同一地址,不同服务,其中一个退出,另一个也会退出springboot+shiro

    说明:

    在服务器上部署了两个服务,其中,除了端口不同,其他都一样;

    现象:其中一个服务退出,另一个也会退出;

    原因:浏览器存储cookie的名称相同,所以会清理掉;

    解决方案:在shiro配置文件中,更新不同的cookiename与remember的名称

       @Value("${session.cookie.name}")
        private String sessionCookieName;
    
        @Value("${session.cookie.remember}")
        private String remember;
    
      
    
        @Bean(name = "simpleIdCookie")
        public SimpleCookie getSimpleCookie() {
            SimpleCookie simpleCookie = new SimpleCookie();
            simpleCookie.setName(null==sessionCookieName?"SHIROSESSIONID":sessionCookieName);
    //        simpleCookie.setName("SHIROSESSIONID");
            return simpleCookie;
        }
        @Bean
        public SimpleCookie rememberMeCookie() {
            SimpleCookie simpleCookie = new SimpleCookie(null==remember?"rememberMe":remember);
    //        SimpleCookie simpleCookie = new SimpleCookie("rememberMe");
            simpleCookie.setMaxAge(86400);//存活  一天
            return simpleCookie;
        }

    还看到别的相似的,记录一下:

    spring boot 多模块,多端口session冲突问题
    解决办法:在其中一个项目的application.properties配置文件中加入如下配置:server.servlet.session.cookie.name
    =sessionid_1 问题原因:这本身和springboot2.0没有任何关系,是因为在同一个地址上发布了两个使用同样cookie name的tomcat导致的,springboot内置的tomcat会生成一个名称为JSESSIONID的cookie name,如果不做修改,两个web服务的cookie name是相同的所以会彼此覆盖,所以需要去修改springboot内置tomcat的cookie name让两个项目的cookie name不同。 需要注意springboot2.0之前的版本是server.session.cookie.name,而2.0之后改为了server.servlet.session.cookie.name,此处为一个坑。 2.0以上版本 server.servlet.session.cookie.name=session_1 2.0以下版本 server.session.cookie.name=session_1
  • 相关阅读:
    vim /home/yuanyc/.bashrc export LC_ALL=zh_CN.UTF-8
    mongodb
    关于RegisterClass和CreateWindow
    c++中sqlite中文路径创建数据库失败的问题
    Layered Window 透明窗体的实现总结
    c++单列模式与线程安全
    Windows下API Hook 技术
    COM编程大致梳理
    关于c++多态
    几个多字节和UNICODE及UTF-8之间相互转化的函数
  • 原文地址:https://www.cnblogs.com/notchangeworld/p/13186059.html
Copyright © 2011-2022 走看看