文章目录
Spring Boot 内嵌的 Tomcat 服务器可以启用 HTTPS 支持。
生成证书
使用第三方 CA 证书。或者,通过 keytool 命令行工具生产密钥和证书。 keytool 是一个 Java 自带的数据证书的管理工具。
- keytool -genkey -alias springboot -storetype PKCS12 -keyalg RSA -keysize 1024 -keystore keystore.p12 -validity 365
命令说明
- -alias 指定证书的别名
- -keyalg 指定密钥算法名称, 此处使用 RSA
- -storetype 指定证书类型
- -keysize 指定私钥位数
- -validity 指定有效期, 单位为天. 此处指定有效期为 365 天
- -keystore 指定密钥库位置
配置 HTTPS 支持
在 application.properties 中配置 HTTPS 支持。
- server.port=8443
- server.ssl.key-store=classpath:keystore.p12
- server.ssl.key-store-password=123456
- server.ssl.keyStoreType=PKCS12
- server.ssl.keyAlias=springboot
启动与测试
创建一个 RESTful API 接口,进行测试。
- @RestController
- @EnableAutoConfiguration
- @ComponentScan(basePackages = { "com.lianggzone.springboot" })
- public class WebMain {
- @RequestMapping("/demo/hello")
- String home() {
- return "Hello World!";
- }
- public static void main(String[] args) throws Exception {
- SpringApplication.run(WebMain.class, args);
- }
- }
启动 tomcat, 访问 。 鼠标左键点击 “继续前往 192.168.244.142(不安全)”, 就可以看到 测试信息。
现在,tomcat 已经支持 https 方式访问。
源代码
相关示例完整代码:
(完)