一、遇到的问题:
先描述一下问题,原来的系统把架构从Spring mvc改成了Spring Boot,并且配置了支持https访问。我用frame框架集成了两个服务,但是两个服务的域名是不一样的。举例,A服务:a.fk.com,B服务:b.fk.com。当我登录到A服务后通过frame集成的方式去访问B,用http可以访问,然而https就不支持。
二、问题定位:
1.由于从A无法登陆B服务,试验直接从浏览器登录B服务登录成功。
2.回来再从A登录B又可以登录了。但是再访问B的其他功能又失败,并且发现清cookie之后,又不能从A访问B。便以为是跨域造成的cookie和session失效
3.查看B日志发现登陆后每次交互的Session id都是不同的,更认为是跨域后session丢失
4.试验网上各种frame和Spring Boot的跨域解决办法,都无效--放弃
5.逼急了直接连生产环境,意外发现居然可以访问(生产环境尚未升级Spring Boot框架),以为是替换Spring Boot框架造成的,而且http可以,https就不行,就以为自己写的http强转https造成的,又纠结好久试验了好几种办法,依然没有解决
6.如果不是替换Spring Boot架构导致的,那就省http和https的差别了,灵光一闪,是不是浏览器SSL证书问题
7.申请了两个公网的云服务器,并且给两个服务器申请了两个免费的SSL证书,验证果然可以了,解决了(妈的,想砸电脑了)
三、总结问题原因:
本地测试一直用自己生成的SSL证书,虽然浏览器一直有不安全提示,但是继续访问可以使用,所以一直没在意。但是在代码中frame用https访问B系统时浏览器并不提示不安全或者SSL证书的问题,就是不通,所以很长时间没意识到这个问题。把各个服务的SSL证书都申请好,浏览器认识的证书就没问题了
==============
此问题折腾了好几天,一个突然的意识解决了
写这么多为了以后给自己提个醒,也希望可以对其他人有些帮助
==============
相关推荐
获取Spring Boot 2微框架的可重用代码配方和代码段 了解Spring Boot 2如何与其他Spring API,工具和框架集成 访问Spring MVC和新的Spring Web Sockets,以实现更简单的Web开发 使用微服务进行Web服务开发并与Spring ...
基于spring boot与mybaits框架的校园点餐APP.pdf
Spring Boot应用开发框架 v2.7.17.zip
最重要的是, 跟spring boot框架一起使用的话,会让你开发微服务架构的云服务非常好的方便。 SpringBoot旨在简化创建产品级的 Spring 应用和服务,简化了配置文件,使用嵌入式web服务器,含有诸多开箱即用微服务...
spring boot 全套示例框架源码(完整包含前端后分离框架、shiro、vue、redis、OAuth2、fastdfs、jwt、mybatis、等等技术点),多年工作经验沉淀总结
spring-boot-helloWorld:spring-boot的helloWorld版本 spring-boot-mybaits-annotation:注解版本 spring-boot-mybaits-xml:xml配置版本 spring-boot-mybatis-mulidatasource:springboot+mybatis多数据源最简解决...
1.6 Spring Boot使用别的json解析框架 1.7 全局异常捕捉 1.8 Spring Boot datasource - mysql 1.9 JPA - Hibernate 1.10 使用JPA保存数据 1.11 使用JdbcTemplate 1.12 Spring Boot修改端口号 1.13 Spring Boot配置...
Spring Boot简化了基于Spring的应用开发,通过少量的代码就能创建一个独立的、产品级别的Spring应用。Spring Boot为Spring平台及第三方库提供开箱即用的设置,这样你就可以有条不紊地开始。多数Spring Boot应用只...
另一方面,当系统模块增加,性能和吞吐量要求增加时,如何平滑地用Spring Boot实现分布式架构,也会在本书后半部分介绍,包括使用Spring实现RESTful架构,在Spring Boot框架下使用Redis、MongoDB、ZooKeeper、...
Spring Boot 集成各种框架 使用案例(spring-boot-rabbitmq、spring-boot-mail、spring-boot-thymeleaf、spring-boot-shiro)
本项目示例基于spring boot 最新版本(2.1.9)实现,Spring Boot、Spring Cloud 学习示例,将持续更新…… 在基于Spring Boot、Spring Cloud 分布微服务开发过程中,根据实际项目环境,需要选择、集成符合项目...
spring boot 框架搭建 maven项目
Spring Boot框架是一个用于构建任何类型应用程序的修改版Spring框架,它基于Java并提供了快速构建和启动应用程序的能力。Spring Boot框架通过自动配置和一系列预定义的特性,显著简化了Spring应用程序的开发过程。...
Spring Boot是一个基于Spring框架的开源项目,旨在简化Spring应用程序的开发、配置和部署。本文将详细介绍Spring Boot的基本概念、特性、常用注解和实践。我们将使用一个实际的示例,帮助你更好地理解和应用Spring ...
Spring Boot 教程、技术栈示例代码,快速简单上手教程。
spring-boot-quartz-demo, 使用Quartz框架的样例 Spring Boot 应用程序 spring-boot-quartz-demo使用Quartz框架的样例 Spring Boot 应用程序基于 https://gist.github.com/jelies/5085593 附加功能( 断点,失火处理...
spring-boot 2.0.0.RELEASE +MyBatis 框架集成。数据库使用mysql
基于spring boot及spring cloud的微服务框架搭建简明指南
介绍一个基于Spring Boot 3.0、Spring Cloud 2022 & Alibaba的微服务RBAC权限管理系统。该系统可以实现微服务RBAC权限管理,通过RBAC权限管理机制对用户访问系统的权限进行限制,从而提高系统的安全性和可用性。同时...