Https在网站中的使用不断的在普及,它不仅能够增加网站的安全性,甚至连搜索引擎都会对支持Https的网站进行区别对待。
但购买Https证书还是比较昂贵的,作为个人开发者,可以自己生成一个证书,也可以在购买域名的服务商那里免费申请到一年期的证书。像我的个人网站https://www.choupangxia.com/ 就是通过域名提供商提供的免费域名。
当然,还有一些专门的免费证书提供商提供三个月免费的证书,到期重新签名,大家感兴趣可以查找一下。
本文将以通过JDK提供的工具来生成证书,并配置到Spring Boot项目中。
证书的生成
在JDK中提供了keytool的一个证书管理工具。位于%JAVA_HOME%bin目录下,通过该工具可生成一个免费的证书。
环境变量配置完成之后,具体生成命令如下:
代码语言:javascript复制keytool -genkey -alias springboot-https -keyalg RSA -keysize 2048 -keystore ./https.p12 -validity 365
上述命令对应参数作用如下:
- genkey:指定为创密钥操作。
- alias:指定keystore的别名。
- keyalg:指定加密算法,这里采用RSA。
- keysize:指定密钥长度。
- keystore 指定生成文件位置。
- validity 指定密钥有效期,单位为天。
当执行完命令之后,需要依次设置证书的相关信息,具体操作步骤如下:
MacBook-Pro:resources zzs$ keytool -genkey -alias springboot-https -keyalg RSA -keysize 2048 -keystore ./https.p12 -validity 365 输入密钥库口令: 再次输入新口令: 您的名字与姓氏是什么? [Unknown]: Zhu 您的组织单位名称是什么?