根据request获取请求客户端的外网ip
//根据request获取外网ip
private static String getRemoteIp(HttpServletRequest request) {
//x-forwarded-for:代表客户端,也就是HTTP的请求端真实的IP,只有在通过了HTTP代理或者负载均衡服务器时才会添加该项
String ip = request.getHeader("x-forwarded-for"); //Proxy-Client-IP和WL-Proxy-Client-IP: 只有在Apache(Weblogic Plug-In Enable)+WebLogic搭配下出现,
// 其中“WL”就是WebLogic的缩写 访问路径是:Client -> Apache WebServer + Weblogic http plugin ->
// Weblogic Instances
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("Proxy-Client-IP");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("WL-Proxy-Client-IP");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getRemoteAddr();
}
// ip = "61.51.253.90";
// ip = "218.25.19.153";
//0:0:0:0:0:0:0:1: IPV6的形式,win7下可能会出现
return ip.equals("0:0:0:0:0:0:0:1") ? "127.0.0.1" : ip;
}
根据request获取请求客户端的外网ip的更多相关文章
- 爬虫, 获取登录者的外网IP
笔者学习了一下用爬虫, 获取登录者的外网IP. 首先导入Jsoup的jar包 public class RetrivePage { private static String url="ht ...
- C#获取本机的外网IP
/// <summary> /// 功能:获取本地的外网IP地址 /// 作者:黄海 /// 时间:2016-07-22 /// </summary> /// <retu ...
- C#获取路由器外网IP,MAC地址
C#实现的获取路由器MAC地址,路由器外网地址.对于要获取路由器MAC地址,一定需要知道路由器web管理系统的用户名和密码.至于获取路由器的外网IP地址,可以不需要知道路由器web管理系统的用户名和密 ...
- 根据Request获取客户端IP 内网IP及外网IP
在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr() ,这种方法在大部分情况下都是有效的.但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实 ...
- java web获取客户端外网ip和所在区域
@参考文章1.@参考文章2.@参考文章3.@参考文章4,@之前同事的项目 controller @Controller @RequestMapping("/home") publi ...
- django-返回客户端外网ip服务
在服务器应用初始化的时候,比如salt-minion,需要在配置文件里说明自己的id,一般用ip. 如果都在一个内网里,从ip命令里获取就行了. 但现在的企业后台环境更加复杂,很多都是跨机房.有物理机 ...
- C# 取得内网IP、外网IP、客户端IP方法
前言 在 Windows Form Application 里对于取得 IP Address 有内网.外网两种 IP Address ,如果只需要取得内网 IP Address ,可以透过使用 IPH ...
- nginx反向代理下thinkphp、php获取不到正确的外网ip
在记录用户发送短信需要获取用户ip时,tp一直获取的是内网ip:10.10.10.10 tp框架获取ip方法:get_client_ip /** * 获取客户端IP地址 * @param intege ...
- C#获取内网和外网IP
写了个小客户端,里面用到了获取内网和外网的IP地址,代码如下: // InnerIP var ipHost = Dns.Resolve(Dns.GetHostName()); ]; innerIP = ...
随机推荐
- 微信硬件平台(八) 4 ESP8266通过微信公众号给用户推送消息
https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=自己申请微信公众号的TOKEN 输出结果: 由于aRDUINO串 ...
- mysql 性能优化思路 - mysqldumpslow /tmp/mysql-slow.log 字符集 utf-8 create database
提高MySQL服务的性能,响应速度: 1.替换有问题的硬件:内存,CPU,磁盘 2.服务的配置参数的配置 3.SQL的优化 .服务参数的配置: 1.1 连接数,连接超时: max_connection ...
- macOS10.14 Mojave无法打开和预览jpg的解决方法
分析:之所以会出现这样的问题.是因为你用了独显 而没有驱动核显导致的.想要预览正常只要用核显或者开启核显加速就OK了就可以正常预览了. 解决办法:换无核显的机型试试,比如MacPro6.1,iMac ...
- C#总结(一)AutoResetEvent的使用介绍(用AutoResetEvent实现同步)
前几天碰到一个线程的顺序执行的问题,就是一个异步线程往A接口发送一个数据请求.另外一个异步线程往B接口发送一个数据请求,当A和B都执行成功了,再往C接口发送一个请求.说真的,一直做BS项目,对线程了解 ...
- linux学习问题总结
目录 一.环境变量和普通变量的区别 二.rsyslog和logrotate会不会丢记录的问题 三.为什么有些文件夹大小不是4096的整数倍 四.reboot和shutdown等软链接实现原理 五.sy ...
- UVA10256 The Great Divide
怎么又没人写题解,那我来贡献一发好了. 题目意思很简单,平面上有两种颜色的点,问你能否求出一条直线使两种颜色的点完全分开. 首先我们考虑两个点集相离的充要条件,这两个点集的凸包必须相离.(很好证明或者 ...
- 六、input框中的数字(金额)只能输入正整数
<input type="text" placeholder="请输入整数" onkeyup="this.value=this.value.re ...
- img :src=“” url()
<img :src="logoImg"> this.logoImg='/static/images/'+adminUser.Logo; v-bind:style=&qu ...
- 软件工程启程篇章:C#和四则运算生成与运算
0x01 :序言 I leave uncultivated today, was precisely yestoday perishes tomorrow which the person of th ...
- Median String CodeForces - 1144E
You are given two strings ss and tt, both consisting of exactly kk lowercase Latin letters, ss is le ...