最近参与了一个微信小程序的项目,APIs要求服务器域名是Https的,所以学习了一下ssl证书在Spring Boot中的配置
首先,到云服务提供商申请一套SSL证书,这里就不提供具体的申请流程了
申请到证书之后下载证书
选择Tomcat
的进行下载,下载解压后有两个文件
分别是.pfx
后缀和.txt
后缀的
打开我们的项目(这里就不演示如何构建自己的基于Spring Boot的项目了)
将.pfx文件放置在resources
目录下,和application.properties
同级
打开application.properties
文件
添加如下字段
其中
server.ssl.key-store
是.pfx
文件的路径server.ssl.key-store-password
是压缩包中.txt文件
的内容server.port
是https
访问使用的端口- 其他两项默认不用改
因为Spring Boot不能同时使用HTTP和HTTPS,所以我们需要将HTTP的请求转发给HTTPS
在SpringBoot2.x中使用配置如下
//下面是2.0的配置,1.x请搜索对应的设置
@Bean
public ServletWebServerFactory servletContainer() {
TomcatServletWebServerFactory tomcat = new TomcatServletWebServerFactory();
tomcat.