vlambda博客
学习文章列表

Tomcat的Https设置及Http自动跳转Https

大技术
产品+技术统称为大技术。分享优秀产品,传播产品思维;专注技术分享,包含JS、HTML5、CSS3、Vue.js,React,Augula和JAVA、SpringBoot、SpringCloud、Docker、K8S等实用技术与框架。
18篇原创内容
Official Account

1.场景还原

近期项目中要对信息传输过程中进行安全加密,那么第一时间浮现笔者脑海的当然是https,接下来笔者将介绍如何在web服务器Tomcat中配置Https及Http自动跳转Https

2.Https相关介绍

Https是由NetScape公司设计的一个基于Http的加密传输协议,可以这样理解Https = Http +SSL(安全套接层),Https的端口为443,而且还需要申请CA数字证书认证。

3.Https的设置

①申明CA数字证书

这里推荐一个免费的阿里平台的CA数字证书(阿里云、腾讯云)


点击免费型DV SSL 购买,跳转到阿里云主界面,找到证书服务相关项,点击进去


输入个人或企业信息进行申请


证书签发成功后,下载相关文档,内容如下:


第一个红框是密钥文件,第二个是密码。

②将生成的密钥文件上传至云服务器 /usr/local/tomcat/conf


③编辑conf/server.xml文件


1>将8443端口处去除注释并改为


密钥文件与密码对号入座;

2>将8080端口改为80,8443改为443


3>将8009处的8443改为443


这样https请求时就不用自动附带8443端口了;

ok,这样Https的设置就大功告成了。

4.Http自动跳转Https

①编辑conf/web.xml文件


②在web.xml末尾加上如下配置:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<security-constraint>

<web-resource-collection >

<web-resource-name >SSL</web-resource-name>

<url-pattern>/*</url-pattern>

</web-resource-collection>

<user-data-constraint>

<transport-guarantee>CONFIDENTIAL</transport-guarantee>

</user-data-constraint>

</security-constraint>

然后 :wq保存并退出。

③重启Tomcat服务

输入 ./startup.sh

验证效果:


大技术
产品+技术统称为大技术。分享优秀产品,传播产品思维;专注技术分享,包含JS、HTML5、CSS3、Vue.js,React,Augula和JAVA、SpringBoot、SpringCloud、Docker、K8S等实用技术与框架。
18篇原创内容
Official Account