文章目录

  • 1.申请证书(腾讯云)
  • 2.下载证书
  • 3.把证书放在resources目录下
  • 4.编写springboot配置文件
  • 5.查看结果
  • 6.本地运行使HTTPS生效的方法

1.申请证书(腾讯云)

申请免费的SSL证书,腾讯云,填写相关信息即可,如绑定的域名、邮箱、备注名

2.下载证书

大约等10分钟就有结果了,在申请成功的证书列表点击下载

下载完成后,目录结构如下,因为SpringBoot内置的是Tomcat,所以就选Tomcat,其余的用不到

3.把证书放在resources目录下

打开Tomcat,有两个文件,将.jks结尾的拷贝到springboot项目的resource目录下

4.编写springboot配置文件

编写配置文件,和你的文件名保持一致,key-store-password就是keystorePass.txt中的内容,只配置3项就可以生效了,无需编写配置类

server:# 配置接口为https,部署后方可生效,本地不会显示ssl:key-store: classpath:域名.jkskey-store-password: ***********key-store-type: JKS

参数说明:
key-store:证书文件的完整路径名
key-store-password:指定了私钥,即keystorePass.txt中的内容。
KeyStoreType:指定证书文件的类型,jks证书文件的类型即是JKS。

5.查看结果

本地启动项目。我的端口为8181,效果如下

这里是http访问的,改为https的效果如下

返回的json数据是我对404进行了捕获,无需在意,出现上面的结果是正常的,因为我们申请的证书域名的ip肯定不是localhost,浏览器会认为证书是无效的,只有部署到和证书域名一样的服务器上才会生效,若申请证书绑定的域名和你部署到的服务器的域名不一致,即使部署到线上证书仍然不被浏览器所认可。

例如服务器的域名为abc.com,证书绑定的域名也应为abc.com而不是三级域名xxx.abc.com

项目package后生成jar包,我是用的是docker部署,不使用docker也可以,可以使用java -jar命令,总之让项目在服务器上跑起来就行

有关docker的文章可以参考:https://blog.csdn.net/weixin_43553153/category_10874280.html

部署成功后访问 https://你的域名:你项目的端口号,docker端口映射为8181:8085
结果如下

发现chrome浏览器的地址栏有一个小锁,说明https生效了。

6.本地运行使HTTPS生效的方法

修改hosts文件即可。(推荐使用SwitchHosts工具修改)
将127.0.0.1映射到申请证书的域名,例如lyunion.top

127.0.0.1 lyunion.top

然后在浏览器访问地址:https://lyunion.top:8181/api地址,就可以发现https也生效了

此时并没有在服务器上部署,是域名和本地IP(127.0.0.1)映射产生的效果。

【Spring Boot】使用 SSL 证书加密 API(HTTPS)相关推荐

  1. Spring Boot配置ssl证书

    Spring Boot配置ssl证书 一.申请有权威的SSL证书 在各大云服务商都可以申请到SSL官方证书. 我这里是在阿里云上申请的,申请后下载,解压.如图: 二.用JDK中keytool是一个证书 ...

  2. 详解HTTPS通信流程,使用JDK,openssl,XCA进行证书认证详细操作,Spring Boot配置SSL证书实操

    这里写目录标题 HTTPS SSL 通信流程 HTTPS一般使用的加密与HASH算法如下: 1.JDK JDK中自带keytool工具便携生成SSL证书,其代码参数如下 整合到spring boot项 ...

  3. Spring Boot配置SSL实现https请求

    Spring Boot配置SSL实现https请求 1. 生成SSL证书 专业的SSL证书较为昂贵,可以在腾讯云或者阿里云上申请免费的SSL证书. 如果只是做简单的demo,可以使用java自带的ke ...

  4. Spring Boot项目中使用RestTemplate调用https接口出现 unable to find valid certification path to requested target

    问题描述:Spring Boot项目中使用RestTemplate调用https接口出现以下错误: PKIX path building failed: sun.security.provider.c ...

  5. StartSSL免费SSL证书成功申请-HTTPS让访问网站更安全

    http://www.freehao123.com/startssl-ssl/ 昨天写了更换空间后重新安装Godaddy SSL的文章,突然想到了一直有朋友向部落提到的StartSSL免费SSL证书服 ...

  6. 21. Spring Boot 2.x最佳实践之 HTTPS 集成

    Spring Boot 2.x最佳实践之 HTTPS 集成 1. HTTPS 科普篇 1.1 什么是HTTP? 1.2 什么是HTTPS? 1.3 HTTP 和HTTPS 的区别 1.4 HTTPS ...

  7. Spring Boot 集成 Swagger 生成 RESTful API 文档

    原文链接: Spring Boot 集成 Swagger 生成 RESTful API 文档 简介 Swagger 官网是这么描述它的:The Best APIs are Built with Swa ...

  8. 使用Spring Boot自动发布和监视API

    如果您正在沿着微服务风格的架构前进,那么您将需要接受的一个租户就是自动化. 这种架构风格介绍了许多活动部件. 如果成功,您的环境将具有大量服务API,企业可以将其用于应用程序开发和集成. 这意味着必须 ...

  9. Spring教程:使用Spring框架和Spring Boot创建Hello World REST API

    由于Java社区对早期版本的Enterprise Java感到失望,因此创建了Spring Framework . 从那时起,它已经发展成为一个巨大的生态系统,可以解决构建基于Web的Java应用程序 ...

最新文章

  1. Spring基础专题——第二章(注入Injection)
  2. 图像识别:能在商业中如何运用
  3. 每日一皮:开会不关微信的尴尬(1)
  4. Kinect实现简单的三维重建
  5. Storm中的LocalState 代码解析
  6. dijkstra算法c++_Matlab 二维模拟退火算法最优路径(主程序)
  7. Lync在Internet上无法登录问题之一
  8. SAP UI5 应用开发教程之二十六 - OData 服务配合 Mock 服务器的使用步骤详解
  9. 算法训练 K好数(dp+动态规划)
  10. php网站开发期末大作业,大学生期末网页大作业
  11. 如何给影像添加投影_地面互动投影是如何实现的,需要哪些设备?
  12. 百度网盘下载器更新啦!PanDownload又带来了「资源搜索」功能!
  13. java url解码_URL的编码和解码
  14. Windows javaw进程占用cpu资源100% 导致电脑卡顿
  15. 无线网服务器断开怎么回事,无线网自动断开怎么回事
  16. 各种中文输入法中输入间隔号“·”的方法
  17. chrony时间同步
  18. 华为设备无线环境中的MAC认证
  19. ethercat的linuxcnc解析器-关于lcec_conf和lcec.so
  20. AXI总线核心解读---基于官方文档

热门文章

  1. 贝叶斯滤波算法(实例)
  2. android usb 摄像头 分辨率,Android 驱动USB摄像头
  3. 数据库系统概论(第五版)期末复习
  4. VTD链接不到license
  5. 小榕SQL注入工具使用
  6. foxmail pop3服务器能收邮件,发不了邮件,为什么我现在用foxmail只能收126的邮件,但是发送说无法连接到服务器POP3 SMTP设置是正确...
  7. Altium Designer(AD)安装教程
  8. [ATF][Power]ARMv8 arm trust firmware
  9. ARM开发板配置rzsz
  10. java 鲜花管理系统_基于jsp的鲜花销售管理系统-JavaEE实现鲜花销售管理系统 - java项目源码...