https简介
超文本传输安全协议(HyperText Transfer Protocol Secure),缩写:HTTPS;常称为 HTTP over TLS、HTTP over SSL 或 HTTP Secure)是一种通过计算机网络进行安全通信的传输协议。HTTPS 经由 HTTP 进行通信,但利用 SSL/TLS 来加密数据包。HTTPS 开发的主要目的,是提供对网站服务器的身份认证,保护交换数据的隐私与完整性。这个协议由网景公司(Netscape)在 1994 年首次提出,随后扩展到互联网上。
SpringBoot支持Https:
第一步:
首先要获取一个https证书,做实验我们可以直接借助 Java 自带的 JDK 管理工具 keytool 来生成一个免费的 https 证书, (现在腾讯云服务器免费申请)
进入java安装目录的bin文件中,执行dir命令,我们可以看到有一个keytool的可执行程序。我们就是用这个来生成 我们所需要的数字证书
从打印结果中我们可以看到我们需要的keytool,如果没有的话就要重新安装一下自己的java环境
然后执行以下代码生成证书
keytool -genkey -alias spring -keypass 123456 -keyalg RSA -keysize 1024 -validity 365 -keystore E:/spring.keystore -storepass 123456
在E盘下就生成一个文件
证书就生成完成了
第二步:
在springboot项目中引入https
新建一个springBoot项目将刚刚生成的证书文件拷贝到项目中的resources目录中 , 然后在application.yml中配置
server:
ssl:
key-password: 123456
key-store: classpath:spring.keystore
key-alias: spring
配置完成后就启动可以启动项目了
使用http访问会出现
使用https访问
我们自己生成的 https 证书不被浏览器认可(实际项目中只需要更换一个被浏览器认可的 https 证书即可)。