1/** 2 * 获取访问者IP 3 * 4 * 在一般情况下使用Request.getRemoteAddr()即可,但是经过nginx等反向代理软件后,这个方法会失效。 5 * 6 * 本方法先从Header中获取X-Real-IP,如果不存在再从X-Forwarded-For获得第一个IP(用,分割), 7 * 如果还不存在则调用Request .getRemoteAddr()。 8 * 9 * @param request10 * @return11*/
import org.apache.commons.lang.StringUtils;
public static String getIpAddr(HttpServletRequest request) {
String ip = request.getHeader("X-Real-IP");
if (!StringUtils.isBlank(ip) && !"unknown".equalsIgnoreCase(ip)) {
return ip;
}
ip = request.getHeader("X-Forwarded-For");
if (!StringUtils.isBlank(ip) && !"unknown".equalsIgnoreCase(ip)) {
// 多次反向代理后会有多个IP值,第一个为真实IP。
int index = ip.indexOf(',');
if (index != -1) {
return ip.substring(0, index);
} else {
return ip;
}
} else {
return request.getRemoteAddr();
}
}
分享到:
相关推荐
java获取访问者的IP地址,适用于web开发。注意:如果是本地测试的话,通过localhost访问的时候ip显示为0:0:0:0:0:0:0:1,这代表的是本地,可以将localhost换成127.0.0.1时,显示的是当前访问的ip地址
### 使用Java获取访问者真实IP地址 在现代Web开发中,获取客户端的真实IP地址是非常重要的。这不仅有助于网站统计分析,还可以用于安全控制、地域限制等功能。然而,在使用如Apache、Squid等反向代理服务器的情况下...
在ASP.NET中,获取访问者IP地址是常见的需求,这主要涉及到网络编程和HTTP协议的知识。IP地址是互联网上每个设备的独特标识,它允许数据在网络中传输到特定的位置。在ASP.NET应用程序中,我们通常使用C#编程语言来...
文章springboot 获取访问者的ip地址、访问设备信息、城市地址信息的源码 文章springboot 获取访问者的ip地址、访问设备信息、城市地址信息的源码 文章springboot 获取访问者的ip地址、访问设备信息、城市地址信息的...
获取访问者IP地址的技术主要涉及到Servlet或JSP中的HTTP请求对象。在Java Servlet中,我们可以使用`HttpServletRequest`接口的`getRemoteAddr()`方法来获取客户端的IP地址。例如: ```java protected void doGet...
1. 获取访问者IP地址 在PHP中,有几种方法可以获取用户的IP地址: - `$_SERVER['REMOTE_ADDR']`: 这是最常用的方式,返回客户端的IP地址。但在某些情况下(如代理服务器或NAT设置),可能获取到的是代理服务器的IP...
### 获取访问者真实的IP地址 在现代Web应用开发过程中,获取客户端的真实IP地址是一项非常重要的功能。这不仅可以帮助我们分析用户行为、优化服务,还能用于安全防护,例如防止恶意攻击等场景。本文将详细介绍如何...
要获取用户访问者的IP地址相关信息,可以利用依赖注入,获取IHttpConnectionFeature的实例,从该实例上可以获取IP地址的相关信息,实例如下:
在Web开发中,经常需要获取客户端的真实IP地址来进行一系列的操作,比如统计访问来源、进行地理定位、安全防护等。然而,在实际应用场景中,客户端请求往往经过了多级代理(如Apache、Squid等),这使得直接使用`...
在Asp.net开发中,获取访问用户IP地址和IP归属地是常见的需求,这有助于我们进行用户定位、数据分析以及安全防护等工作。纯真IP数据库(QQWry.Dat)是广泛使用的IP地址库,它提供了丰富的IP地址到地理位置的映射信息...
在C# .NET编程环境中,获取用户访问者的IP地址并进一步确定其所在地区是一项常见的需求,这在构建网站、分析用户行为或者实现地理定位服务时非常有用。本教程将指导初学者如何通过C# .NET实现这一功能,利用QQ纯真IP...
它提供了便捷的方法来获取和处理IP地址,尤其对于获取客户端IP地址在Web应用中至关重要。 首先,让我们详细了解一下`IpUtils`这个工具类。在Java中,获取IP地址通常涉及到`java.net`包中的类,如`InetAddress`。`...
print('ip:', ip) if __name__ == '__main__': get_outer_ip() ``` 3. **运行测试**:保存上述脚本并执行,即可看到本机的外网IP地址被打印出来。 #### 进一步探讨 - **错误处理**:在实际应用中,为了提高...
在互联网应用中,获取访问者的IP地址是很多开发者需要进行的操作,无论是用于记录用户访问日志,还是为了提供地域化服务,比如显示用户所在地区的天气预报等。在JavaScript中,我们可以通过jQuery等库来简化获取IP...
### 使用Java获取访问者真实IP地址 在现代Web开发中,获取客户端的真实IP地址是非常重要的。这不仅可以用于统计分析、安全审计,还可以帮助提供更好的用户体验。然而,在通过代理服务器(如Apache、Squid等)转发...
获取访问者ip地址,123456789012345678901234567890123456789
为了更准确地获取用户IP,我们需要结合以上几种方法并进行验证。以下是一个示例代码,展示了如何在PHP中实现这一功能: ```php function getRealIp() { $ip = ''; // 首先尝试使用REMOTE_ADDR获取IP if (!...
在这个例子中,我们向`http://ifconfig.me`发送了一个HTTP GET请求,该网站会返回访问者的真实外网IP地址。当QNetworkReply完成请求后,我们从其数据中提取IP地址并打印出来。注意,这里只是一个基本的示例,实际...
本篇文章将深入探讨IP地址的获取方法,主要针对初学者,通过代码示例帮助理解。 1. **静态IP配置**: 在某些固定环境中,如服务器或内部网络设备,我们通常会手动配置IP地址,称为静态IP。这需要在操作系统网络...
本文将深入探讨如何在JSP中准确获取浏览者的真 实IP地址,尤其是在多级代理环境下的处理方法。 #### 基础方法:request.getRemoteAddr() 通常,开发人员会首先尝试使用`HttpServletRequest`接口中的`getRemoteAddr...