【发布时间】:2021-01-22 03:33:03
【问题描述】:
我使用apache2 作为tomcat8 服务器前面的反向代理。我已经使用X-Forwarded-For 来查找客户端IP 地址。
但我的目标是让客户hostname。这有可能吗?我必须告诉 apache 或 tomcat 吗?
【问题讨论】:
标签: java apache tomcat apache2 reverse-proxy
我使用apache2 作为tomcat8 服务器前面的反向代理。我已经使用X-Forwarded-For 来查找客户端IP 地址。
但我的目标是让客户hostname。这有可能吗?我必须告诉 apache 或 tomcat 吗?
【问题讨论】:
标签: java apache tomcat apache2 reverse-proxy
通过 http,您将获得客户端的公共 IP 地址,这可能是他们的代理,也可能是他们的 NAT 路由器。您可以使用该 IP 地址进行反向 DNS 查找,但由于客户端计算机很少有可公开寻址的 DNS 条目,因此您不会走得太远。 (其实你也正好问过that question,也得到了很好的回答)
由于此问题专门针对 主机名,而不是关于 DNS 条目,因此此答案与您的其他问题的答案不同:
我看到访问主机名本身的唯一选项(类似于“John's Mac”)是浏览器显示它 - 例如通过 Javascript。 如果浏览器会允许这样做,我相信所有的广告网络都会对这种信息泄露垂涎三尺。这就是为什么我希望您无法使用 actual 主机名,甚至无需查找任何选项。
【讨论】: