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 能让网站更安全,有兴趣的试试吧。

(0)

相关推荐

  • springboot添加https服务器的方法

    什么是https 要说https我们得先说SSL(Secure Sockets Layer,安全套接层),这是一种为网络通信提供安全及数据完整性的一种安全协议,SSL在网络传输层对网络连接进行加密.SSL协议可以分为两层:SSL记录协议(SSL Record Protocol),它建立在可靠的传输协议如TCP之上,为高层协议提供数据封装.压缩.加密等基本功能支持:SSL握手协议(SSL Handshake Protocol),它建立在SSL记录协议之上,用于在实际数据传输开始之前,通信双方进行身

  • springboot+nginx+https+linux实现负载均衡加域名访问简单测试

    1.把springboot项目打包成三个jar包,并指定端口为 14341,14342,14343 2.下载腾讯云免费ssl证书,解压后会出现如下图文件夹 3.把nginx文件夹下的 .crt 和 .key文件复制到服务器,例如复制到 /home/ssl/xxx.crt /home/ssl/xxx.key 4.安装好nginx默认配置文件在 /usr/local/nginx/conf/nginx.conf 5.修改nginx.conf配置文件实现https+负载均衡的简单测试(此测试是在一台服务

  • SpringBoot2.0如何启用https协议

    SpringBoot2.0之后,启用https协议的方式与1.*时有点儿不同,贴一下代码. 我的代码能够根据配置参数中的condition.http2https,确定是否启用https协议,如果启用https协议时,会将所有http协议的访问,自动转到https协议上. 一.启动程序  package com.wallimn.iteye.sp.asset; import org.apache.catalina.Context; import org.apache.catalina.connect

  • 详解SpringBoot初始教程之Tomcat、Https配置以及Jetty优化

    1.介绍 在SpringBoot的Web项目中,默认采用的是内置Tomcat,当然也可以配置支持内置的jetty,内置有什么好处呢? 1. 方便微服务部署. 2. 方便项目启动,不需要下载Tomcat或者Jetty 在目前的公司已经把内置的Jetty部署到了线上项目中,目前来说并无太大问题,内置就算有一些性能损失,但是通过部署多台机器, 其实也能够很轻松的解决这样的问题,内置容器之后其实是方便部署和迁移的. 1.1 优化策略 针对目前的容器优化,目前来说没有太多地方,需要考虑如下几个点 线程数

  • 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 中配置证书及

  • springboot配置https访问的方法

    1.购买或本地生成ssl证书 要使用https,首先需要证书,获取证书的两种方式: 1.自己通过keytool生成 2.通过证书授权机构购买 ###### 作为演示,我们使用keytool生成: C:\Users\xxx>keytool -genkey -alias tomcat -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore keystore.p12 -validity 3650 输入密钥库口令: 再次输入新口令: 您的名字与姓氏是什

  • springboot配置https安全连接的方法

    1.项目上线,以前没有配置过https的安全连接...刚刚申请了一个https免费证书.(我使用的是unbantu16系统) Let's Encrypt 是属于介绍性质的,而真正用到的工具是 Certbot,去 https://certbot.eff.org/ 下载合适自己系统的Certbot. 2. 下载Certbot sudo apt-get install software-properties-common sudo add-apt-repository ppa:certbot/cert

  • springboot 配置DRUID数据源的方法实例分析

    本文实例讲述了springboot 配置DRUID数据源的方法.分享给大家供大家参考,具体如下: druid 是阿里开源的数据库连接池. 开发时整合 druid 数据源过程. 1.修改pom.xml <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> <dependency> &l

  • nodejs脚本centos开机启动实操方法

    node环境的安装便不再赘述了,网上有很多教程,也非常简单. 这一篇是使用pm2实现nodejs的自动重启. 什么是pm2? 如官网介绍的,pm2是nodejs下先进的,生产进程管理器.如性能监控,自动重启.负载均衡等等. 关于pm2的更多教程,请移步pm2官方文档 1.请确保安装了node 2.安装pm2 npm install pm2 -g 3.使用pm2启动server文件 *请注意将start后边的地址改为自己的文件地址 pm2 start /api/server.js --name="

  • python函数超时自动退出的实操方法

    本章给大家在项目使用时候,常见的一种情况解决案例,即是当我们调用多个线程,使用了同一个函数去处理数据的时候,有些用函数已经处理完成,但是有些还没有,这就需要我们将任务进行分割,然后当一小部分任务执行后,退出来,另外没有执行的完成超时的就继续去执行,下面就针对遇到这些问题的小伙伴,给大家提供解决参考. 安装timeout-decorator库: pip3 install timeout-decorator 编写异常语句: @timeout_decorator.timeout(5, timeout_

  • 使用SpringBoot配置https(SSL证书)

    目录 SpringBoot配置https(SSL证书) 仅需三步 1.把tomcat目录里面的.jks文件 2.配置application.yml 3.接下来是重定向 SpringBoot 改造成https访问 1.生成密钥证书 2.将生成的密钥证书拷贝到项目中的resource中 3.修改项目配置文件application.properties 4.启动项目,直接访问项目即可 SpringBoot配置https(SSL证书) 最近在做微信小程序,https是必须条件 仅需三步 SpringBo

  • 在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法

    本博文目的:在非服务器.而且没有证书颁发机构(Certificate Authority简称CA)的开发环境中,配置HTTPS,SSL用于测试或学习 一.建造测试网站 1.在桌面上建立个文件夹,然后再在文件夹里新建个html文件 2.打开IIS,添加网站,如图: 3.访问网站http://localhost:8090,如图:  二.创建证书 IIS里的Server Certificates提供了5种创建证书的方法,见下图: 1.其中Create a Self-Signed Server Cert

  • Centos 5下配置https服务器的方法

    [root@centos5 ~]# yum -y install mod_ssl 在线安装mod_ssl Loading "fastestmirror" plugin Loading mirror speeds from cached hostfile * base: centos.candishosting.com.cn * updates: mirror.khlug.org * addons: centos.candishosting.com.cn * extras: centos

随机推荐