乐趣区

关于springboot:深入浅出springboot学习笔记SpringBoot配置SSLhttps

本篇文章次要内容:

SpringBoot 配置 SSL(https)

SpringBoot 全局异样解决

SpringBoot 404 页面解决

接下来让咱们一起探讨三大框架之一的 springboot 框架:

SpringBoot 配置 SSL(https)

SpringBoot 能够通过在 application.properties 或 application.yml 配置文件中配置各种 server.ssl.* 属性来申明性应用 SSL(https),比方上面的例子在 application.properties 中设置 SSL 属性:

如果应用了下面的配置就示意 springboot 应用程序不再在端口 8080 上反对 HTTP 连贯申请,SpringBoot 不能通过配置 application.properties 来实现既反对 HTTP 连贯又反对 HTTPS 连贯,这是做不到的,如果要同时反对 HTTP 和 HTTPS,则须要以编程形式配置其中的一个,倡议应用 application.properties 文件来配置 HTTPS,以编程形式配置 HTTP,这是比拟容易的办法;

SpringBoot 反对配置 https 具体步骤:

1、生成证书,能够使自签名证书(平时测试的时候)或者从 SSL 证书受权核心购买证书(上线);

平时生成证书进行测试的话,有两种生成证书的形式

(1)利用 JDK 工具生成证书

证书生成后咱们能够验证下 jks 是否蕴含了残缺的证书链:

keytool -list -v -keystore server.jks
keytool -list -v -keystore server.pkcs12

(2)利用 Openssl 工具生成证书

通过 openssl 来生成,如果 linux 中没有装置 openssl,须要装置一下,执行:

yum install openssl openssl-devel -y

1、# 生成一个 RSA 密钥(私钥)

openssl genrsa -out server.key 2048

2、# 生成一个证书申请

openssl req -new -key server.key -out server.csr -subj “/C=CN/ST=Beijing/L=Beijing/O=power Inc./OU=Web Security/CN=power.com”

3、# 本人签发证书

openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

字段解读

  • C 字段:Country,单位所在国家,为两位数的国家缩写,如:CN 示意中国;
  • ST 字段:State/Province,单位所在州或省;
  • L 字段:Locality,单位所在城市 / 或县区;
  • O 字段:Organization,此网站的单位名称;
  • OU 字段:Organization Unit,上司部门名称,也经常用于显示其余证书相干信息,如证书类型,证书产品名称或身份验证类型或验证内容等;
  • CN 字段:Common Name,网站的域名;

转换为 pkcs12 格局(因为在 Java 中应用证书,须要转换一下格局)

openssl pkcs12 -export -clcerts -in server.crt -inkey server.key -out server.p12
openssl pkcs12 -export -clcerts -in server.crt -inkey server.key -out server.pkcs12

转换为 jks 格局(因为在 Java 中应用证书,须要转换一下格局,jks 是 java 独有的)

keytool -importkeystore -srckeystore server.pkcs12 -destkeystore server.jks -srcstoretype pkcs12 -deststoretype jks

2、配置或编写代码;

留神咱们是在 Java 环境中,罕用的证书模式有 p12、pkcs12 格局、jks 格局,如果不是该格局,须要转换;p12、pkcs12 是同一个,只是证书的后缀不同而已;

作业:独自有一个 Tomcat,配置一下 https;

SpringBoot 全局异样解决
在我的项目的开发中,如果报错了,间接在页面显示 500 谬误,输入一大堆的异样信息,这对应用户来说体验不敌对,所以在企业外面对这些异样个别都会对立捕捉,由一个专门的异样解决类来对立解决。(原来在 ssm 框架中,咱们是在 tomcat 定义谬误页或者 web.xml 定义谬误页)

具体参考课程演示和代码;

https://www.bilibili.com/vide…

课程内容:

本课程由浅入深,带你体验 Spring Boot 的极速开发过程,内容丰盛,涵盖了 SpringBoot 开发的方方面面,并且同步更新到 Spring Boot 2.x 系列的最新版本,让你一次性拿下 Spring Boot 开发框架。

SpringBoot 404 页面解决

当输出地址有误,会进入 springboot 默认的白板 404 页面,对用户不太敌对,咱们能够对立定义一个全局的 404 错误处理;

退出移动版