使用SpringBoot配置https(SSL证书)

 更新时间:2021年12月28日 11:10:28   作者:abandon̸  
这篇文章主要介绍了使用SpringBoot配置https(SSL证书),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

SpringBoot配置https(SSL证书)

最近在做微信小程序,https是必须条件

仅需三步

SpringBoot2.x版本

对比一下这个小锁头是不是莫名有点好看?

在这里插入图片描述

在这里插入图片描述

嘤为很久以前就备案有域名,就直接申请了SSL证书,几分钟就下来了

在这里插入图片描述

1.把tomcat目录里面的.jks文件

复制到项目里面(注意路径)

在这里插入图片描述

2.配置application.yml

  ssl:
    key-store: classpath:server.jks
    key-store-password: 申请时设置的密码
    keyStoreType: JKS

在这里插入图片描述

3.接下来是重定向

在启动类底下添加;(把指定的http8080端口重定向到https8888)

@Bean
    public ServletWebServerFactory servletContainer() {
        TomcatServletWebServerFactory tomcat = new TomcatServletWebServerFactory();
        tomcat.addAdditionalTomcatConnectors(createHTTPConnector());
        return tomcat;
    }
    private Connector createHTTPConnector() {
        Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol");
        //同时启用http(8080)、https(8443)两个端口
        connector.setScheme("http");
        connector.setSecure(false);
        connector.setPort(8080);
        connector.setRedirectPort(443);
        return connector;
    }

在这里插入图片描述

ok

SpringBoot 改造成https访问

SpringBoot https改造

1.生成密钥证书

生成命令:keytool -genkey -alias tomcat -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore keystore.p12 -validity 3650

(1)关键字解释:

alias:密钥别名

storetype:指定密钥仓库类型

keyalg:生证书的算法名称,RSA是一种非对称加密算法

keysize:证书大小

keystore:生成的证书文件的存储路径

validity:证书的有效期

(2)生成证书注意:

在输入证书生成命令之后,会提示输入:

  • 密钥库口令:证书密码,在后面的项目中配置证书时用到
  • 姓氏:一般没什么用,在浏览器中查看证书时会显示,用于正式场合的证书还是需要填写标准。
  • 组织单位:证书使用单位信息,一般没什么用,在浏览器中查看证书时会显示,用于正式场合的证书还是需要填写标准。
  • 组织单位名称:证书使用单位名称,一般没什么用,在浏览器中查看证书时会显示,用于正式场合的证书还是需要填写标准。
  • 所在的城市或区域名称:浏览器中查看证书信息时会显示。
  • 所在的省/市/自治区名称:浏览器中查看证书信息时会显示。
  • 单位的双字母国家/地区代码:国家或地区编码,浏览器中查看证书信息时会显示。

2.将生成的密钥证书拷贝到项目中的resource中

也可以不拷贝到项目中,后面配置路径时配置密钥证书的绝对路径即可

3.修改项目配置文件application.properties

增加如下配置项:

  • server.ssl.key-store=classpath:keystore.p12 (密钥文件路径,也可以配置绝对路径)
  • server.ssl.key-store-password=aqjcpt (密钥生成时输入的密钥库口令)
  • server.ssl.keyStoreType=PKCS12 (密钥类型,与密钥生成命令一致)
  • server.ssl.keyAlias=tomcat (密钥别名,与密钥生成命令一致)

4.启动项目,直接访问项目即可

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • java实现上传图片并压缩图片大小功能

    java实现上传图片并压缩图片大小功能

    这篇文章主要为大家详细介绍了java实现上传图片并压缩图片大小功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • 不了解这12个语法糖,别说你会Java

    不了解这12个语法糖,别说你会Java

    这篇文章主要介绍了不了解这12个语法糖,别说你会Java,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • Netty分布式Server启动流程服务端初始化源码分析

    Netty分布式Server启动流程服务端初始化源码分析

    本章主要讲解server启动的关键步骤, 读者只需要了解server启动的大概逻辑, 知道关键的步骤在哪个类执行即可, 并不需要了解每一步的运作机制, 之后会对每个模块进行深度分析
    2022-03-03
  • Java代码的三根顶梁柱:循环结构

    Java代码的三根顶梁柱:循环结构

    这篇文章主要介绍了JAVA 循环结构的相关资料,文中讲解的非常细致,示例代码帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2021-08-08
  • Java使用Jsoup解析html网页的实现步骤

    Java使用Jsoup解析html网页的实现步骤

    Jsoup是一个用于解析HTML文档的Java库,本文主要介绍了Java使用Jsoup解析html网页的实现步骤,可以提取文本、链接、图片等,具有一定的参考价值,感兴趣的可以了解一下
    2024-02-02
  • java list去重操作实现方式

    java list去重操作实现方式

    本文主要介绍了java list 去重的方法,其中有带类型写法和不带类型写法,并举例测试,具有一定参考借鉴价值,希望能对有需要的小伙伴有所帮助
    2016-07-07
  • vue+springboot读取git的markdown文件并展示功能

    vue+springboot读取git的markdown文件并展示功能

    Markdown-it 是一个用于解析和渲染 Markdown 标记语言的 JavaScript 库,使用 Markdown-it,你可以将 Markdown 文本解析为 HTML 输出,并且可以根据需要添加功能、扩展语法或修改解析行为,本文介绍vue+springboot读取git的markdown文件并展示,感兴趣的朋友一起看看吧
    2024-01-01
  • java中ThreadLocalRandom的使用详解

    java中ThreadLocalRandom的使用详解

    这篇文章主要介绍了java中ThreadLocalRandom的使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-03-03
  • 详解Java的Hibernate框架中的缓存与二级缓存

    详解Java的Hibernate框架中的缓存与二级缓存

    这篇文章主要介绍了Java的Hibernate框架中的缓存与二级缓存,Hibernate是Java的SSH三大web开发框架之一,需要的朋友可以参考下
    2015-12-12
  • 深入详解Java中synchronized锁升级的套路

    深入详解Java中synchronized锁升级的套路

    synchronized锁是啥?锁其实就是一个对象,随便哪一个都可以,Java中所有的对象都是锁,换句话说,Java中所有对象都可以成为锁。本文我们主要来聊聊synchronized锁升级的套路,感兴趣的可以收藏一下
    2023-04-04

最新评论