文章目录

  1. 1. 生成证书
  2. 2. 配置 HTTPS 支持
  3. 3. 启动与测试
  4. 4. 源代码


微信公众号 >>> 加入全国服务端技术社群「后端圈」(点击加入) <<<

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, 访问 https://localhost:8443/demo/hello 。 鼠标左键点击 “继续前往 192.168.244.142(不安全)”, 就可以看到 测试信息。

现在,tomcat 已经支持 https 方式访问。

源代码

相关示例完整代码: springboot-action

文章目录

  1. 1. 生成证书
  2. 2. 配置 HTTPS 支持
  3. 3. 启动与测试
  4. 4. 源代码