tomcat http改成https请求


一、获取SLL证书

1.CA机构签发的https证书

需要到CA机构申请,收费,正式项目这个可以委托甲方申请。这里提供几个权威的CA机构:
CAJ机构
申请通过之后会下发证书和秘钥,txt文件中会有秘钥。
在这里插入图片描述

2.本地自签名证书

本地测试的话就没必要去申请CA认证,可以通过JDK自己给自己下发证书:
首先,进入jdk的bin路径下,在此处按住shift+右键,打开Powershell窗口,执行下面的命令

 keytool -genkey -v -alias keystoreKey -keyalg RSA -validity 3650 -keystore F:\apache-tomcat-8.5.59\conf\tomcat.keystore

keytool -genkey:使用默认的算法生成公钥和私钥

-alias 名称 :证书的别名,

-keyalg:制定密钥的算法,如果需要制定密钥的长度,可以再加上keysize参数,密钥长度默认为1024位,使用DSA算法时,密钥长度必须在512到1024之间,并且是64的整数倍

-validity:证书的有效日期,默认是90天,这里设置的3650天

-keystore:参数可以指定密钥库的名称,密钥库其实是存放秘钥和证书文件,会将生成的证书存放到指定的目录下。
接下来会让输入部分信息:
注意:名字与姓氏是域名,本地可以直接指定localhost,剩下的可以直接回车,最后一个是否正确输入 y
在这里插入图片描述
这样在F:\apache-tomcat-8.5.59\conf\下就生成了秘钥库文件

二、服务器中使用https请求

这里以tomcat为例,windows环境下
找到tomcat conf目录下的server.xml文件,全局搜索https,如果没有复制下面的代码到文件中,其中port是项目访问端口号,keystoreFile是生成的秘钥库文件,keystorePass是生成秘钥库文件时的密码

	    <Connector port="50101" protocol="org.apache.coyote.http11.Http11NioProtocol"
               maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" 
               keystoreFile="F:/apache-tomcat-8.5.59/conf/tomcat.keystore" 
			   keystorePass="123456" />

在这里插入图片描述
我这里直接将http请求给毙掉了,切换的https请求;这里还可以设置成将http请求强制转换成https请求,只需将http请求的Connector放开,将本地环境处 port换成8443,8443是默认的转发接口,可以给成别的,只需保证redirectPort和port一致就行。
接下来需要在web.xml中设置https属性:在web.xml文件中搜索: 在后面加上下面这段代码

	<!--强制使用https,http请求会自动转为https -->
<login-config>
    <auth-method>CLIENT-CERT</auth-method>
    <realm-name>Client Cert Users-only Area</realm-name>
</login-config>
<!--配置网站支持https,/* 表示全部请求都走https, transport-guarantee 标签设置为 CONFIDENTIAL以便使应用支持 SSL。 如果需要关闭 SSL ,将 CONFIDENTIAL 改为 NONE 即可 -->
<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>

--------完成 ----------

测试

在浏览器地址栏输入项目地址,这里可能会出现下面这种情况,点击继续前往
在这里插入图片描述
这里可以单击 不安全查看证书有效期
在这里插入图片描述
点击证书
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值