Spring Boot 中怎么支持 HTTPS
发表于:2025-01-24 作者:千家信息网编辑
千家信息网最后更新 2025年01月24日,本篇文章为大家展示了Spring Boot 中怎么支持 HTTPS,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。支持 HTTPSSpring Boot 配置
千家信息网最后更新 2025年01月24日Spring Boot 中怎么支持 HTTPS
本篇文章为大家展示了Spring Boot 中怎么支持 HTTPS,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
支持 HTTPS
Spring Boot 配置 SSL 很简单,只需要通过一系列的 server.ssl.*
参数即可完成配置,如下所示。
application.properties 配置文件参考配置:
server.port=8443server.ssl.protocol=TLSserver.ssl.key-store=classpath:javastack.keystoreserver.ssl.key-store-password=javastackserver.ssl.key-store-type=JKS
如何在本地测试创建证书请参考Java技术栈微信公众号的这篇文章《一分钟开启Tomcat https支持》,把生成完的证书复制到 Spring Boot 项目中的 resources 目录即可。
这边只是提供了一个 SSL 单向验证的演示,更多 SSL 参数配置如下。
server.ssl.ciphers= # Supported SSL ciphers.server.ssl.client-auth= # Whether client authentication is wanted ("want") or needed ("need"). Requires a trust store.server.ssl.enabled= # Enable SSL support.server.ssl.enabled-protocols= # Enabled SSL protocols.server.ssl.key-alias= # Alias that identifies the key in the key store.server.ssl.key-password= # Password used to access the key in the key store.server.ssl.key-store= # Path to the key store that holds the SSL certificate (typically a jks file).server.ssl.key-store-password= # Password used to access the key store.server.ssl.key-store-provider= # Provider for the key store.server.ssl.key-store-type= # Type of the key store.server.ssl.protocol=TLS # SSL protocol to use.server.ssl.trust-store= # Trust store that holds SSL certificates.server.ssl.trust-store-password= # Password used to access the trust store.server.ssl.trust-store-provider= # Provider for the trust store.server.ssl.trust-store-type= # Type of the trust store.
参数对应的类:org.springframework.boot.web.server.Ssl
上面的例子配置后就能开启 HTTPS 了,默认的 HTTP 协议就不再支持了,Spring Boot 不支持以配置文件配置的方式同时支持 HTTP 和 HTTPS。
如何同时支持?
如果你需要同时支持 HTTP 和 HTTPS 这两个协议,就需要把另外一个协议用程序化的方式来配置。因为通过程序的方式配置 HTTP 协议更加简单一点,所以,Spring Boot 推荐的做法是把 HTTPS 配置在配置文件,HTTP 通过程序来配置。
来,下面示例就是通过程序的方式来额外支持 HTTP 协议。
@SpringBootApplicationpublic class JavastackApplication { @Bean public ServletWebServerFactory servletContainer() { TomcatServletWebServerFactory tomcat = new TomcatServletWebServerFactory(); tomcat.addAdditionalTomcatConnectors(createStandardConnector()); return tomcat; } private Connector createStandardConnector() { Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol"); connector.setPort(8080); return connector; } public static void main(String[] args) { SpringApplication.run(JavastackApplication.class, args); }}
启动 Spring Boot 之后就会看到下面的同时支持两个协议日志。
Tomcat started on port(s): 8443 (https) 8080 (http) with context path '/'
上述内容就是Spring Boot 中怎么支持 HTTPS,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。
配置
支持
同时
方式
程序
参数
文件
两个
内容
就是
技能
更多
知识
篇文章
证书
面的
参考
简明
简明扼要
例子
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全态势感知白皮书
软件开发类项目增值税率
网络技术历年考试题
整体厨房设计软件开发
美国 网络安全
呈贡区软件开发价格信息
网络安全权威报告
网络安全法的趣味
鸠鸠互联网科技代理后台
阿里数据库怎么打开
怎么在数据库中创建用户名
计算机网络技术自学靠谱吗
摩拜服务器安全吗
工业企业网络安全工作总结
云浮分布式服务器排名
中软软件开发
网络安全应急预案演练汇报
潘多啦币软件开发开发
网络技术防水施工
莱姆山谷跟哪个服务器合区
博途opc服务器接口的作用
国税网络安全攻防演示会
网络技术助力中小企业发展
江夏软件开发团队
深圳大世纪网络技术公司
ip电话管理服务器
档案软件开发资质
软件开发大家都用什么电脑
安全数据库评测软件有哪些
郑州国家网络安全微电影