request.getRemoteHost() 返回 IP 地址而不是 FQDN

request.getRemoteHost() 返回 IP 地址而不是 FQDN

我正在设计一个 servlet,我想在其中确定客户端的完全限定域名 (FQDN)。我尝试使用 javax.servlet.HttpServletRequest.getRemoteHost() 来获取主机名。当在 Apache Tomcat 作为独立服务器上运行应用程序时,request.getRemoteHost() 可以按我希望的方式工作,返回客户端的 FQDN。但是,当使用 Apache Httpd 服务器作为前端并使用 mod_jk 作为连接器运行应用程序时,request.getRemoteHost() 始终返回客户端的 IP 地址而不是 FQDN。

我尝试了以下两个配置选项来尝试解决此问题。

  1. 在 Apache Tomcat 的 server.xml 中我设置了enableLookups =“true”
  2. 在 Apache Httpd 的 httpd.conf 中,我已将 HostnameLookups 设置为 On

request.getRemoteHost() 仍然返回客户端的 IP 地址而不是 FQDN。

当使用 Apache Httpd 运行 Apache Tomcat 时,是否有一个配置选项允许我的 servlet 的 request.getRemoteHost() 方法返回客户端的 FQDN,就像仅使用 Apache Tomcat 运行时一样?

我的环境是 RHEL 7.5,带有 Apache Httpd 服务器 2.4.6 和 Apache Tomcat 8.5

相关内容