售前咨询
技术支持
渠道合作

Tomcat设置HTTP页面自动跳转到HTTPS

HTTP转换到HTTPS常见的解决方案是部署SSL证书来升级。只有正确部署了SSL证书才能使用安全的HTTPS。但有时候,客户端使用http进行访问时,HTTP协议没有跳转到HTTPS。为了解决这种局面,下面介绍Tomcat 服务器实现HTTP自动转换到HTTPS的方法。

Tomcat 实现HTTP自动转换到HTTPS方法介绍

方法一:

需要做两个地方改动。

1:server.xml 中配置ssl证书的端口要改成默认的“443”端口,如果已经修改,请直接操作第二步;

2:在web.xml配置文件中添加节点代码:如下

<web-app>

………

<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>

</web-app>

3:回到server.xml 配置文件中找到80端口的节点,里面有默认这个属性是 redirectPort=”8443″ 要改成 “443” 保存重启即可。

方法二:

1、配置Tomcat,打开$CATALINA_HOME/conf/server.xml,修改如下

<Connector port=”8080″ protocol=”HTTP/1.1″ connectionTimeout=”20000″ redirectPort=”8443″ />

修改参数==>

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

<!–

<Connector port=”8443″ protocol=”HTTP/1.1″ SSLEnabled=”true”

maxThreads=”150″ scheme=”https” secure=”true”

clientAuth=”false” sslProtocol=”TLS” />

–>

去掉注释且修改参数==>

<Connector port=”443″ protocol=”org.apache.coyote.http11.Http11Protocol” SSLEnabled=”true”

maxThreads=”150″ scheme=”https” secure=”true”

clientAuth=”false” sslProtocol=”TLS”

keystoreFile=”d:/dev/tomcat.keystore”

keystorePass=”123456″ />

<!–

<Connector port=”8009″ enableLookups=”false” protocol=”AJP/1.3″ redirectPort=”8443″ />

–>

修改参数==>

<Connector port=”8009″ enableLookups=”false” protocol=”AJP/1.3″ redirectPort=”443″ />

二、局部https安全连接配置,打开web项目\WEB-INF\web.xml文件,在该文件</welcome-file-list>后面加上这样一段:

<!– 局部https安全连接配置 –>

<security-constraint>

<display-name>Auth</display-name>

<web-resource-collection>

<web-resource-name>Protected Area</web-resource-name>

<!–

<url-pattern>/index/json/login</url-pattern>

<url-pattern>/admin/json/admin/companyLogin</url-pattern>

<url-pattern>/admin/companyLogin</url-pattern>

<url-pattern>/admin/agentLogin</url-pattern>

–>

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

<url-pattern>/main/index</url-pattern>

</web-resource-collection>

<user-data-constraint>

<description>SSL required</description>

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

</user-data-constraint>

</security-constraint>

上述配置完成后,重启TOMCAT后即可以使用SSL。IE地址栏中可以直接输入地址不必输入“http://” 或者 “https://” ;也可以输入 “http:// ” 会跳转成为 “https://” 来登录。

希望更多的站点能够添加到HTTPS的队伍,为此,数安时代(GDCA)推出免费SSL证书给广大用户,为个人博客等要求安全等级低的站点提供免费的HTTPS解决方案,而安全等级要求高的用户(如企业网站、电商平台……)可选择数安时代(GDCA)提供的收费SSL证书。GDCA(数安时代)除了拥有国内自主签发信鉴易 TrustAUTH  SSL证书以及是国际知名品牌:GlobalSign、Symantec、GeoTrust SSL证书国内金牌代理商,满足各种用户对SSL的各种要求,广大用户可根据自身的需求向GDCA申请合适的SSL证书,GDCA的专业团队将会为您提供最佳的HTTPS解决方案。

上一篇:

下一篇:

相关文章