Tomcat使用Https协议

背景:

在一个项目上线的过程中,采用了阿里云的负载均衡,而不是nginx的负载均衡,所以需要配置tomcat支持https协议

1、生成keystore

1 keytool -genkeypair -alias "tomcat" -keyalg "RSA" -validity 90 -keystore "/root/tomcat.keystore"  

"/root/tomcat.keystore"  生成的keystore位置和名称

-keyalg "RSA"  加密算法

-validity 90 有效天数

2、配置Tomcat(conf文件夹中的server.xml)

1 <Connector port="443" protocol="org.apache.coyote.http11.Http11Protocol"  
2                 maxThreads="150" SSLEnabled="true" scheme="https" secure="true"  
3                 clientAuth="false" sslProtocol="TLS"  
4                 keystoreFile="/root/tomcat.keystore"   
5               keystorePass="tomcat" />

keystorePass为生成keystore时输入的密码
启动tomcat就可以以https访问了

3、https与http协议转换(有些页面需要使用https访问,有些页面使用http访问)

1 <Connector port="8080" protocol="HTTP/1.1"  
2                connectionTimeout="20000"  
3                redirectPort="8009" />

替换为

<Connector port="80" protocol="HTTP/1.1"  
               connectionTimeout="20000"  
               redirectPort="443" />

4、页面强制使用https协议(例如:登录页面必须使用https协议)

在项目资源中的web.xml或tomcat/conf/web.xml文件中的</welcome-file-list>后加上:  
<web-resource-collection >  
    <web-resource-name >SSL</web-resource-name>  
    <url-pattern>/*</url-pattern><!-- 这里表示所有页面都必须使用https协议 -->  
</web-resource-collection>  
    <user-data-constraint>   
        <transport-guarantee>CONFIDENTIAL</transport-guarantee>  
    </user-data-constraint>   
</security-constraint> 

 

转载于:https://www.cnblogs.com/asen0713/p/7103913.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值