在反向代理后配置 Tomcat

在反向代理后配置 Tomcat

我在我们公司的本地分支机构运行 Tomcat 7 服务器。该服务器通过端口 80 和 443 向公众开放。几天前,总部管理员更改了配置;Tomcat 现在需要通过反向代理进行连接。总部管理员更改了防火墙规则、DNS 条目并配置了反向代理。由于他们没有使用 Tomcat 的经验,他们要求我更改配置,以便让 Tomcat 在 8080 上监听来自反向代理的请求。

Tomcat的Connector定义如下:

<Connector port="80" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="443" />
    <Connector
           protocol="HTTP/1.1"
           port="443" maxThreads="400"
           scheme="https" secure="true" SSLEnabled="true"
           keystoreFile="foobar.jks" keystorePass="foo_bar"
           clientAuth="false" sslProtocol="TLS"/>
 <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000" proxyName="server.company.com" proxyPort="443" />

但是,当我从 Firefox 调用 URI 时,我收到“重定向错误”,指出无法完成重定向。在 Tomcats 访问日志中有以下模式的条目:

<revere proxy internal ip> - - [14/Dec/2015:15:52:31 +0100] "GET / HTTP/1.1" 302 -

如果我删除 proxyName 和 proxyPort 连接器属性,则会发送到 tomcat 内部服务器名称的重定向。

任何帮助解决该问题的帮助都将不胜感激。

答案1

尝试向端口 8080 的连接器添加 scheme="https" 和 secure="true",假设反向代理正在执行 SSL 卸载。

相关内容