一、前言
日常项目开发过程中,测试环境和生产环境大多数使用HTTP访问服务,从浏览器上可以看到,左上角一般会显示不安全提示,好在为了安全层面着想,现在生产环境基本都会使用HTTPS来访问服务,这样安全性较高,传统的SSM架构,部署web服务都是托管与外部Tomcat容器,那么配置HTTPS访问也是需要从类似于阿里云、腾讯云等等购买SSL安全证书后放到Tomcat下面,然后配置访问,方可支持HTTPS来访问,至少我项目部署生产环境是这么做的。
二、SpringBoot如何支持HTTPS
从传统SSM架构演变为今天的SpringBoot快速开发、SpringBoot默认内嵌了Tomcat,是在SpringBoot启动时,使用Java代码New出来一个Tomcat,因此SpringBoot默认就是使用Jar部署,当然也支持外部Tomcat部署,不过大多数都是使用默认的jar部署,这样更方便,那打成jar部署如何配置SSL证书,使得SpringBoot项目运行时也要同时支持HTTPS和HTTPS访问呢,当然是在application.yml或者application.properties里配置了。
三、生成SSL证书
- 专业的SSL证书较为昂贵,可以在腾讯云或者阿里云上申请免费的SSL证书。
- 如果只是做简单的demo,可以使用java自带的keytool工具生成SSL证书
一、从阿里云申请免费的SSL证书,有效期默认是一年
二、使用JDK
自带的keytool生成证书
本次为了开发测试SpringBoot项目使用HTTPS来访问&