SpringBoot配置https实操方法

 更新时间:2019年11月06日 08:41:53   作者:SpringForAll  
在本篇文章里小编给大家整理的是关于SpringBoot配置https实操方法以及相关知识点,需要的朋友们参考下。

升级 https 记录

1、去阿里云购买证书(免费版),并提交审核资料

购买的证书

2、下载证书

下载证书

3、查看上图页面的第三步

JKS证书安装

4、在证书目录下执行阿里云提供的命令,密码都填 pfx-password.txt 中的内容(三次),会生成 your-name.jks 文件。

生成 jks 证书

此处我已改名为 any.jks

5、将 any.jks 复制到 spring boot 应用的 resources 目录下

移动证书

6、在 application.yml 中配置证书及端口,密码填写第四步中的密码

此配置会使 Undertow 容器监听 443 端口,那么只有在域名前添加 https:// 才能访问网站内容,添加 http:// 则不行,所以需要让 Undertow 容器监听 80 端口,并将 80 端口的所有请求重定向到 443 端口,即完成 http 到 https 的跳转。

7、添加 SslConfig.java ,配置 Undertow 监听 80 端口。

@Configuration
public class SslConfig {

  @Bean
  public EmbeddedServletContainerFactory servletContainer() {

    UndertowEmbeddedServletContainerFactory undertowFactory = new UndertowEmbeddedServletContainerFactory();
    undertowFactory.addBuilderCustomizers(new UndertowBuilderCustomizer() {

      @Override
      public void customize(Undertow.Builder builder) {
        builder.addHttpListener(80, "0.0.0.0");
      }

    });
    return undertowFactory;
  }

}

8、在 Spring Security 中配置 80 端口到 443 端口的映射 【待完善】

至此,重新打包应用,重新发布应用,即完成了 http 到 https 的升级, https 能让网站更安全,有兴趣的试试吧。

相关文章

  • 详解Guava Cache本地缓存在Spring Boot应用中的实践

    详解Guava Cache本地缓存在Spring Boot应用中的实践

    Guava Cache是一个全内存的本地缓存实现,本文将讲述如何将 Guava Cache缓存应用到 Spring Boot应用中。具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-01-01
  • SpringBoot之@Aspect注解解读

    SpringBoot之@Aspect注解解读

    这篇文章主要介绍了SpringBoot之@Aspect注解解读,AOP是面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术,而@Aspect 就是把一个类定义为切面供容器读取,需要的朋友可以参考下
    2024-01-01
  • Java中的Feign深入分析

    Java中的Feign深入分析

    这篇文章主要介绍了Java中的Feign深入分析,Feign是一个用于发送HTTP请求的工具,它的主要作用是在不同的服务之间传递Token,为了使用Feign,你需要在项目中配置一个Feign的配置类,需要的朋友可以参考下
    2023-09-09
  • Java Lambda 表达式源码解析

    Java Lambda 表达式源码解析

    这篇文章主要介绍了Java Lambda在JVM中是如何实现的,感兴趣的小伙伴一起来了解了解
    2021-08-08
  • Springboot @Validated和@Valid的区别及使用详解

    Springboot @Validated和@Valid的区别及使用详解

    这篇文章主要介绍了Springboot @Validated和@Valid的区别及使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-05-05
  • Java JDBC高封装Util类的项目实践

    Java JDBC高封装Util类的项目实践

    这篇文章主要介绍了Java JDBC高封装Util类的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-08-08
  • 关于@Valid注解大全以及用法规范

    关于@Valid注解大全以及用法规范

    这篇文章主要介绍了关于@Valid注解大全以及用法规范,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-01-01
  • Java计算两个字符相似度的几种常用方法

    Java计算两个字符相似度的几种常用方法

    这篇文章主要给大家介绍了关于Java计算两个字符相似度的几种常用方法,这是一个很实用的功能,该方法需要传入两个字符串,经过计算会返回两个字符串的相似度,需要的朋友可以参考下
    2023-10-10
  • Java面向对象基础之多态性,抽象类和接口

    Java面向对象基础之多态性,抽象类和接口

    这篇文章主要介绍了Java面向对象基础:多态性,抽象类和接口,文中代码可以帮助各位更好的理解学习,有需求的小伙伴可以参考下
    2020-05-05
  • mybatis那些约定的配置你真的都了解吗(经验总结)

    mybatis那些约定的配置你真的都了解吗(经验总结)

    mybatsi中Mapper和xml文件之间有很多约定俗称的规则,比如名称匹配,包扫描,别名等,这些规则是什么。如果想更加灵活,该如何配置呢?今天就给大家讲一下如何配置mybatsi的xml文件
    2021-06-06

最新评论