本文介绍如何在Spring Boot中,使用Https提供服务,并将Http请求自动重定向到Https。

Https证书
巧妇难为无米之炊,开始的开始,要先取得Https证书。你可以向证书机构申请证书,也可以自己制作根证书。
创建Web配置类
在代码中创建一个使用了Configuration注解的类,就像下面这段代码一样:
@Configuration
public class WebConfig {
//Bean 定义...
}
配置Https
在配置类中添加EmbeddedServletContainerCustomizer Bean,并在其中配置Https证书和端口号。
@Bean
public EmbeddedServletContainerCustomizer containerCustomizer() {
return new EmbeddedServletContainerCustomizer() {
@Override
public void customize(ConfigurableEmbeddedServletContainer container) {
Ssl ssl = new Ssl();
//Server.jks中包含服务器私钥和证书
ssl.setKeyStore("server.jks");
ssl.setKeyStorePassword("123456");
container.setSsl(ssl);
container.setPort(8443);
}
};
}
配置Http使其自动重定向到Https
Embedded默认只有一个Connector,要在提供Https服务的同时支持Http,需要添加一个Connector。在配置类中添加如下配置:
@Bean
public EmbeddedServletContainerFactory servletContainerFactory() {
TomcatEmbeddedServletContainerFactory factory =
new TomcatEmbeddedServletContainerFactory() {
@Override
protected void postProcessContext(Context context) {
//SecurityConstraint必须存在,可以通过其为不同的URL设置不同的重定向策略。
SecurityConstraint securityConstraint = new SecurityConstraint();
securityConstraint.setUserConstraint("CONFIDENTIAL");
SecurityCollection collection = new SecurityCollection();
collection.addPattern("/*");
securityConstraint.addCollection(collection);
context.addConstraint(securityConstraint);
}
};
factory.addAdditionalTomcatConnectors(createHttpConnector());
return factory;
}
private Connector createHttpConnector() {
Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol");
connector.setScheme("http");
connector.setSecure(false);
connector.setPort(8080);
connector.setRedirectPort(8443);
return connector;
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# Spring
# Boot使用
# Https
# Boot
# 基于springboot设置Https请求过程解析
# spring boot配置ssl实现HTTPS的方法
# Spring Boot实现Undertow服务器同时支持HTTP2、HTTPS的方法
# springboot配置https访问的方法
# SpringBoot2.0如何启用https协议
# Spring boot通过HttpSessionListener监听器统计在线人数的实现代码
# springboot添加https服务器的方法
# 详解SpringBoot初始教程之Tomcat、Https配置以及Jetty优化
# Spring Boot支持HTTPS步骤详解
# 重定向
# 类中
# 巧妇难为无米之炊
# 就像
# 你可以
# 并在
# 要在
# 这段
# 可以通过
# 并将
# 只有一个
# 使其
# 要先
# 创建一个
# 大家多多
# 其为
# 端口号
# 使用了
# 如何在
# WebConfig
相关文章:
建站之星安装路径如何正确选择及配置?
武清网站制作公司,天津武清个人营业执照注销查询系统网站?
如何在景安服务器上快速搭建个人网站?
C#如何使用XPathNavigator高效查询XML
免费公司网站制作软件,如何申请免费主页空间做自己的网站?
网站制作的方法有哪些,如何将自己制作的网站发布到网上?
网站插件制作软件免费下载,网页视频怎么下到本地插件?
建站之星后台密码遗忘如何找回?
如何有效防御Web建站篡改攻击?
定制建站价位费用解析与套餐推荐全攻略
如何在Tomcat中配置并部署网站项目?
无锡营销型网站制作公司,无锡网选车牌流程?
制作网站的软件下载免费,今日头条开宝箱老是需要下载怎么回事?
如何在IIS中配置站点IP、端口及主机头?
西安制作网站公司有哪些,西安货运司机用的最多的app或者网站是什么?
建站主机是什么?如何选择适合的建站主机?
北京网页设计制作网站有哪些,继续教育自动播放怎么设置?
如何在阿里云购买域名并搭建网站?
设计网站制作公司有哪些,制作网页教程?
Swift中swift中的switch 语句
表情包在线制作网站免费,表情包怎么弄?
如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南
网站制作公司,橙子建站是合法的吗?
相亲简历制作网站推荐大全,新相亲大会主持人小萍萍资料?
如何使用Golang安装API文档生成工具_快速生成接口文档
非常酷的网站设计制作软件,酷培ai教育官方网站?
重庆网站制作公司哪家好,重庆中考招生办官方网站?
制作网站的过程怎么写,用凡科建站如何制作自己的网站?
手机怎么制作网站教程步骤,手机怎么做自己的网页链接?
香港服务器如何优化才能显著提升网站加载速度?
建站主机与虚拟主机有何区别?如何选择最优方案?
陕西网站制作公司有哪些,陕西凌云电器有限公司官网?
广德云建站网站建设方案与建站流程优化指南
建站之星安装需要哪些步骤及注意事项?
完全自定义免费建站平台:主题模板在线生成一站式服务
洛阳网站制作公司有哪些,洛阳的招聘网站都有哪些?
如何在IIS7上新建站点并设置安全权限?
如何快速搭建虚拟主机网站?新手必看指南
简单实现Android文件上传
建站之星备案流程有哪些注意事项?
韩国服务器如何优化跨境访问实现高效连接?
青浦网站制作公司有哪些,苹果官网发货地是哪里?
XML的“混合内容”是什么 怎么用DTD或XSD定义
如何在阿里云完成域名注册与建站?
网站制作专业公司有哪些,如何制作一个企业网站,建设网站的基本步骤有哪些?
如何快速上传建站程序避免常见错误?
,交易猫的商品怎么发布到网站上去?
jQuery 常见小例汇总
微信小程序 input输入框控件详解及实例(多种示例)
北京专业网站制作设计师招聘,北京白云观官方网站?
*请认真填写需求信息,我们会在24小时内与您取得联系。