如何在https和端口80中运行tomcat?

时间:2016-05-29 08:47:28

标签: java apache tomcat centos iptables

我正在尝试在Centos + tomcat7上托管一个网站,如果我在端口80上运行tomcat7一切正常,即74.208.164.45,但如果我想使用https://74.208.164.45/访问它,它就不起作用了,但如果我在添加密钥库后尝试这样https://74.208.164.45:8443/,那么它可以正常工作。

所以,我需要一种在80和https上运行tomcat的方法,即https://74.208.164.45/在端口80上运行正常。 现在,我只尝试使用Tomcat,但如果它完全不可能,那么我可以使用一些Apache http服务器使用AJP连接器重定向到tomcat,但这是我最不想做的事情。 另外,我们可以用IPTables做点什么吗?

2 个答案:

答案 0 :(得分:4)

您需要更改https的连接器端口,默认值为" 8443"到" 443"在server.xml中

默认看起来像这样:

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
           maxThreads="150" scheme="https" secure="true"
           clientAuth="false" sslProtocol="TLS" />

请参阅Tomcat文档中有关如何设置SSL的SSL/TLS Configuration HOW-TO

答案 1 :(得分:1)

这可能是server.xml中的完整格式

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

<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="150" SSLEnabled="true" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS"  keystoreFile="/.keystore" keystorePass="Pa$$W0rd" />