// 多次反向代理后会有多个IP值,第一个为真实IP。
来源:互联网 发布:js onmouseover 编辑:程序博客网 时间:2024/06/13 23:42
package tax.zkfp.webservice.impl;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import org.apache.axis2.context.MessageContext;
import org.apache.axis2.transport.http.HTTPConstants;
import org.apache.commons.lang3.StringUtils;
import org.apache.log4j.Logger;
public class LoginWebServiceImpl implements LoginWebService {
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();
}
}
//初始化日志记录器
private static Logger logger = Logger.getLogger(LoginWebServiceImpl.class);
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import org.apache.axis2.context.MessageContext;
import org.apache.axis2.transport.http.HTTPConstants;
import org.apache.commons.lang3.StringUtils;
import org.apache.log4j.Logger;
public class LoginWebServiceImpl implements LoginWebService {
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();
}
}
//初始化日志记录器
private static Logger logger = Logger.getLogger(LoginWebServiceImpl.class);
0 0
- // 多次反向代理后会有多个IP值,第一个为真实IP。
- nginx反向代理,node获取真实IP
- Nginx反向代理获取客户端真实IP
- nginx 反向代理取真实IP地址
- Nginx反向代理获取客户端真实IP
- Nginx反向代理获取客户端真实IP
- varnish反向代理--apache获取真实ip
- 多级反向代理获取真实客户端IP
- 以cdn为前导,使用Nginx服务器反向代理,获取客户端真实ip的办法
- 多级反向代理[Squid]下获取客户端真实IP地址
- 多级反向代理[Squid]下获取客户端真实IP地址
- 多级反向代理[Squid]下获取客户端真实IP地址
- 多级反向代理[Squid]下获取客户端真实IP地址
- 多级反向代理[Squid]下获取客户端真实IP地址
- 多级反向代理[Squid]下获取客户端真实IP地址
- 多级反向代理[Squid]下获取客户端真实IP地址
- 多级反向代理[Squid]下获取客户端真实IP地址
- 多级反向代理[Squid]下获取客户端真实IP地址
- CVS 项目出现两个版本号
- SuSe linux SSH IDLE SESSION TimeOut configuration
- ORACLE如何停止一个JOB
- Shark简介
- hbase mapreduce出错
- // 多次反向代理后会有多个IP值,第一个为真实IP。
- Embrace Our Life 打开心门拥抱生活
- HDU 1695 容斥原理
- 数据仓库术语
- ios常用宏定义
- android应用内截图的代码实现
- 黑马程序员----反射
- 如何使一个div在某个元素的相对位置出现
- 【QT】3 - [QStyle] Qt常用组件属性说明