【发布时间】:2014-03-19 18:32:45
【问题描述】:
我需要在 JSP 页面中获取客户端的 IP 地址。我尝试了以下方法:
request.getRemoteAddr()
request.getHeader("X_FORWARDED_FOR")
request.getHeader("HTTP_CLIENT_IP")
request.getHeader("WL-Proxy-Client-IP")
request.getHeader("Proxy-Client-IP")
request.getHeader("REMOTE_ADDR")
但是,这些方法都没有返回所需的 IP 地址。 JSP页面中如何获取客户端的IP地址?
【问题讨论】:
-
如果您使用自定义标题,请始终将它们命名为
X-<custom-name>。 -
request.getRemoteAddr()返回什么? -
另见this问题。
-
request.getRemoteAddr() 返回 0:0:0:0:0:0:0:1 这不是客户端 IP 的真实值。
-
尝试request.getRemoteHost()方法,如果客户端不使用该方法返回的客户端的网关ip。否则此方法返回网关的ip。