gpt4 book ai didi

java - 在 apache/tomcat 设置 (mod_jk) 后面的 Vaadin 中获取 IP 地址总是给出服务器的 IP 地址

转载 作者:行者123 更新时间:2023-11-28 23:16:04 24 4
gpt4 key购买 nike

使用推荐的 Vaadin 代码在前面有 apache 后面有 tomcat 的设置中获取 IP 地址,使用 mod_jk 总是会导致获取服务器的 IP 地址:

Page.getCurrent().getWebBrowser().getAddress();

我捕获了 this snippet这解释了这是因为连接来自 Apache,这是有道理的,但该解决方案也不起作用。

因此我的问题是,当 tomcat 服务器使用 mod_jk 在 apache 后面时,如何在 Vaadin 8 中获取实际用户的 IP 地址?

最佳答案

String header = VaadinService.getCurrentRequest().getHeader("x-forwarded-for");
if(header == null || "".equals(header)
return "";
return InetAddress.getByName(header).getHostAddress();

最好进行空字符串检查,以防出现任何 NullPointerException 问题。

关于java - 在 apache/tomcat 设置 (mod_jk) 后面的 Vaadin 中获取 IP 地址总是给出服务器的 IP 地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49218261/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com