Tomcat配置https&http自动跳转https

虽然觉得个人的网站博客好像没有特别的需要配置https,但是…为了看起来帅一点,我决定配置https…

  • 本文配置https前置条件:

    1、已有备案的域名

    2、已部署好http下访问的相关页面

第一步 申请SSL证书

阿里云申请SSL证书

  • 先在偌大的产品与服务中找到“SSL证书”选项
    在这里插入图片描述

  • 点击购买证书
    在这里插入图片描述

  • 进入相关页面后选定“免费型DV SSL”并进行购买
    在这里插入图片描述

  • 购买成功后要进行证书申请
    在这里插入图片描述

  • 按申请内容进行填写

  • 等待证书申请成功通知(时间不定,有过十几分钟就申请成功,也有过申请了几个小时才成功的…)

  • 申请成功之后下载SSL证书,下载证书后里面有四个目录,分别是Apache、IIS、Nginx、Tmocat,其中Tomcat里有我们要使用的证书

腾讯云申请SSL证书

  • 先在偌大的产品与服务中找到“SSL证书”选项
    在这里插入图片描述

  • 点击申请免费证书选项
    在这里插入图片描述

  • 按信息填写相关内容
    在这里插入图片描述

  • 其中填写了私钥密码则后续下载的证书文件(Tomcat目录)中就不会生成keystorePass文件,在Tomcat的配置中keystorePass也是填写你自己的私钥密码

  • 等待证书申请成功通知(时间不定,有过十几分钟就申请成功,也有过申请了几个小时才成功的…)

  • 申请成功之后下载SSL证书,下载证书后里面有四个目录,分别是Apache、IIS、Nginx、Tmocat,其中Tomcat里有我们要使用的证书

第二步 在Tomcat中配置https

  • 打开你下载的证书目录,进入Tomcat目录下,里面有两个文件,一个是www.你的域名.com.jks,一个是keystorePass.txt(腾讯云的在申请证书时填写了私钥密码则没有该文件),前者jks文件是密钥库。将该文件上传至Tomcat的conf目录下
  • 同样在Tomcat的conf目录下,用记事本或者其他编辑软件打开server.xml文件,在其中添加以下内容(先观察你的tomcat中有没有相关的内容,注意不要写到注释里面去了)
<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
keystoreFile="c:/Tomcat/conf/" #证书保存的路径,
keystorePass="******"#密钥库密码(keystorePass.txt中内容)
clientAuth="false"/>
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
  • Tomcat的https配置就这样搞定了

第三步 配置http自动跳转https

  • 在Tomcat的conf目录下,编辑web.xml文件,移至最底部,在标签下换行并添加以下内容
<login-config>
 <!-- Authorization setting for SSL -->
 <auth-method>CLIENT-CERT</auth-method>
 <realm-name>Client Cert Users-only Area</realm-name>
 </login-config>
 <security-constraint>
 <!-- Authorization setting for SSL -->
 <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>
  • 注意是后,即该标签结束后
  • 再编辑Tomcat的conf目录下的server.xml文件,将redirectPort 参数修改为 SSL 的 connector 的端口,即8443端口修改为443端口(此操作将非SSL的connector跳转至SSL的connector)。如下所示
<Connector port="80" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="443" />
<Connector port="80" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="443" />
  • 之后重启Tomcat即可
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值