文档章节

Spring Boot 实现 HTTPS

STINGWOH
 STINGWOH
发布于 2017/09/04 17:17
字数 326
阅读 17
收藏 0

转自 http://www.cnblogs.com/cnblog-long/p/7244671.html

文章目录

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

Spring Boot 内嵌的 Tomcat 服务器可以启用 HTTPS 支持。

生成证书

使用第三方 CA 证书。或者,通过 keytool 命令行工具生产密钥和证书。 keytool 是一个 Java 自带的数据证书的管理工具。

  1. keytool -genkey -alias springboot -storetype PKCS12 -keyalg RSA -keysize 1024 -keystore keystore.p12 -validity 365

命令说明

  1. -alias 指定证书的别名
  2. -keyalg 指定密钥算法名称, 此处使用 RSA
  3. -storetype 指定证书类型
  4. -keysize 指定私钥位数
  5. -validity 指定有效期, 单位为天. 此处指定有效期为 365 天
  6. -keystore 指定密钥库位置

配置 HTTPS 支持

在 application.properties 中配置 HTTPS 支持。

  1. server.port=8443
  2. server.ssl.key-store=classpath:keystore.p12
  3. server.ssl.key-store-password=123456
  4. server.ssl.keyStoreType=PKCS12
  5. server.ssl.keyAlias=springboot

启动与测试

创建一个 RESTful API 接口,进行测试。

  1. @RestController
  2. @EnableAutoConfiguration
  3. @ComponentScan(basePackages = { "com.lianggzone.springboot" })
  4. public class WebMain {
  5.  
  6. @RequestMapping("/demo/hello")
  7. String home() {
  8. return "Hello World!";
  9. }
  10.  
  11. public static void main(String[] args) throws Exception {
  12. SpringApplication.run(WebMain.class, args);
  13. }
  14. }

启动 tomcat, 访问 https://localhost:8443/demo/hello 。 鼠标左键点击 “继续前往 192.168.244.142(不安全)”, 就可以看到 测试信息。

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

源代码

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

(完)



如果觉得我的文章对你有帮助,请随意打赏。

 

微信公众号

© 著作权归作者所有

共有 人打赏支持
STINGWOH
粉丝 2
博文 49
码字总数 11745
作品 0
苏州
Spring Boot学习笔记

文件上传与下载 springboot 上传文件到服务器 Spring Boot2.0连载(33)-- Spring Boot文件上传下载 SpringBoot项目的The temporary upload location ***is not valid 问题 /tmp/tomcat.8483...

OSC_fly
07/26
0
0
springboot集成mybatis

springboot集成mybatis application.yml 从哪里找到这些配置项: springboot 自己的配置项 https://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties......

黄威
07/09
0
0
Spring Boot使用Spring Data Redis操作Redis(单机/集群)

说明:Spring Boot简化了Spring Data Redis的引入,只要引入spring-boot-starter-data-redis之后会自动下载相应的Spring Data Redis和Jedis客户端,可以减少版本这块的冲突,当然,如果要引入...

easonjim
2017/11/08
0
0
通用 Mapper 4.0.3 发布,完美支持 devtools

通用 Mapper 4.0.3 已发布,该版本从根本上解决了通用 Mapper 对 devtools 的支持。 但是 https://github.com/abel533/mapper-cast-exception 中列举的特殊情况在目前都不支持(mybatis也支持...

Liuzh_533
06/20
0
0
深入 Spring Boot : 快速集成 Dubbo + Hystrix

背景 Hystrix 旨在通过控制那些访问远程系统、服务和第三方库的节点,从而对延迟和故障提供更强大的容错能力。Hystrix具备拥有回退机制和断路器功能的线程和信号隔离,请求缓存和请求打包,以...

小致dad
07/02
0
0

没有更多内容

加载失败,请刷新页面

加载更多

如何通过 J2Cache 实现分布式 session 存储

做 Java Web 开发的人多数都会需要使用到 session (会话),我们使用 session 来保存一些需要在两个不同的请求之间共享数据。一般 Java 的 Web 容器像 Tomcat、Resin、Jetty 等等,它们会在...

红薯
今天
3
0
C++ std::thread

C++11提供了std::thread类来表示一个多线程对象。 1,首先介绍一下std::this_thread命名空间: (1)std::this_thread::get_id():返回当前线程id (2)std::this_thread::yield():用户接口...

yepanl
今天
3
0
Nignx缓存文件与动态文件自动均衡的配置

下面这段nginx的配置脚本的作用是,自动判断是否存在缓存文件,如果有优先输出缓存文件,不经过php,如果没有,则回到php去处理,同时生成缓存文件。 PHP框架是ThinkPHP,最后一个rewrite有关...

swingcoder
今天
2
0
20180920 usermod命令与用户密码管理

命令 usermod usermod 命令的选项和 useradd 差不多。 一个用户可以属于多个组,但是gid只有一个;除了gid,其他的组(groups)叫做扩展组。 usermod -u 1010 username # 更改用户idusermod ...

野雪球
今天
3
0
Java网络编程基础

1. 简单了解网络通信协议TCP/IP网络模型相关名词 应用层(HTTP,FTP,DNS等) 传输层(TCP,UDP) 网络层(IP,ICMP等) 链路层(驱动程序,接口等) 链路层:用于定义物理传输通道,通常是对...

江左煤郎
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部