首页 > 代码库 > Tomcat使用Https协议
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>
Tomcat使用Https协议
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。