我的编程空间,编程开发者的网络收藏夹
学习永远不晚

springboot 同时启用http/https的配置方法

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

springboot 同时启用http/https的配置方法

1. 启用HTTPS

修改配置

application.yml


server:
# port: 80
  port: 443
  ssl:
    enabled: true
    key-store: /key_store.jks
    key-store-password: key_store_pwd

2. 添加http协议连接器

增加JAVA配置


@Bean
public ServletWebServerFactory servletWebServerFactory() {
    TomcatServletWebServerFactory tomcat = new TomcatServletWebServerFactory();
    Connector connector = new Connector(TomcatServletWebServerFactory.DEFAULT_PROTOCOL);
    connector.setPort(80);
    tomcat.addAdditionalTomcatConnectors(connector);
    return tomcat;
}

扩展知识点:springboot如何配置,同时支持https和http

使用jdk自带的keytools创建证书


keytool -genkey -alias tomcat -keyalg RSA -keystore ./server.keystore

按照提示完成操作

输入密钥库口令:123456
再次输入新口令:123456
您的名字与姓氏是什么?
  [Unknown]:  kaibowang
您的组织单位名称是什么?
  [Unknown]:  yuxuelian
您的组织名称是什么?
  [Unknown]:  yuxuelian
您所在的城市或区域名称是什么?
  [Unknown]:  chengdu
您所在的省/市/自治区名称是什么?
  [Unknown]:  chengdushi
该单位的双字母国家/地区代码是什么?
  [Unknown]:  china
CN=kaibowang, OU=yuxuelian, O=yuxuelian, L=chengdu, ST=chengdushi, C=china是否正确?
  [否]:  y

输入 <tomcat> 的密钥口令
        (如果和密钥库口令相同, 按回车):
再次输入新口令:

Warning:
JKS 密钥库使用专用格式。建议使用 "keytool -importkeystore -class="lazy" data-srckeystore C:\Users\Administrator\.keystore -destkeystore C:\Users\Administrator\.keystore -deststoretype pkcs12" 迁移到行业标准格式 PKCS12。

创建完成后,可在用户根目录查看生成的keystore文件

将生成的keystore文件复制到项目的根目录下

keystore放在根目录下

在application.yml中添加配置


server:
  port: 443
  ssl:
    key-store: server.keystore
    key-store-password: 生成server.keystore时输入的密码
    key-alias: tomcat
    key-store-type: JKS

在application启动文件中添加配置


package com.cisdi.info.simple;

import org.apache.catalina.connector.Connector;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.domain.EntityScan;
import org.springframework.boot.autoconfigure.security.servlet.SecurityAutoConfiguration;
import org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory;
import org.springframework.boot.web.servlet.server.ServletWebServerFactory;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.context.annotation.Bean;



@SpringBootApplication(scanBasePackages = {"com.cisdi.info.simple.*"}, exclude = {SecurityAutoConfiguration.class})
@EntityScan("com.cisdi.info.simple.*")
@EnableDiscoveryClient(autoRegister = false)
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

    //配置http
    @Bean
    public ServletWebServerFactory servletContainer() {
        TomcatServletWebServerFactory tomcat = new TomcatServletWebServerFactory();
        tomcat.addAdditionalTomcatConnectors(createStandardConnector()); // 添加http
         return tomcat;
    }

    
    private Connector createStandardConnector() {
        Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol");
        connector.setPort(8080);
        return connector;
    }

}

完成配置

以上就是springboot 同时启用http/https的配置方法的详细内容,更多关于springboot启用http/https的资料请关注编程网其它相关文章!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

springboot 同时启用http/https的配置方法

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

SpringBoot开发启动时配置校验的方法是什么

这篇文章主要介绍“SpringBoot开发启动时配置校验的方法是什么”,在日常操作中,相信很多人在SpringBoot开发启动时配置校验的方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”SpringB
2023-06-25

idea springboot启动配置的方法是什么

Spring Boot的启动配置有两种方法:1. 使用application.properties文件:可以在src/main/resources目录下创建application.properties文件,并在该文件中配置启动参数,例如:`
2023-09-21

Springboot项目中使用redis的配置方法

小编给大家分享一下Springboot项目中使用redis的配置方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!springboot是什么springboot一
2023-06-14

SpringBoot 常用读取配置文件的 3 种方法!

我们在SpringBoot框架进行项目开发中该如何优雅的读取配置呢?或者说对于一些List或者Map应该如何配置呢? 本篇主要解决如下几个问题: 1、Spring Boot有哪些常用的读取配置文件方式? 1)使用 @Value 读取配置文件
2023-08-17

Linux CentOS使用crontab设置定时重启的方法

本篇介绍 crontab LtNYomohYS设置定时任务,并且把 crontab 加入到开机自启动中。 1、配置一个每天自动重启的功能: 如果支持crontab 可直接 crontab -l 查看目前已有的定时任务 如果当前的linux不
2022-06-04

Win7下启用IIS7配置ASP运行环境的详细方法

第一次在Windows7下配置IIS,虽然有丰富的xp下配置IIS的经验,但还是会遇到不少的问题。特别是对入门者来说,搞清一些东西还是挺费时间的。其实win7下的IIS7配置过程是非常简单的。下面让seo博客来详细的介绍一下win7下配置I
2023-05-30

Hikari连接池使用SpringBoot配置JMX监控的方法是什么

本文小编为大家详细介绍“Hikari连接池使用SpringBoot配置JMX监控的方法是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“Hikari连接池使用SpringBoot配置JMX监控的方法是什么”文章能帮助大家解决疑惑,下面跟
2023-07-06

取消每次启动Office2007时提示安装配置问题的解决方法是怎样的

这篇文章将为大家详细讲解有关取消每次启动Office2007时提示安装配置问题的解决方法是怎样的,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。就是在安装Office2007版完成后,每次去运
2023-06-14

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录