文档章节

获取真实ip

JavaSon712
 JavaSon712
发布于 2017/11/05 22:29
字数 85
阅读 17
收藏 0
package org.apache.shiro.session.mgt;

import javax.servlet.http.HttpServletRequest;

public class IpUtils {
    private IpUtils() {
    }

    public static String getIpAddr(HttpServletRequest request) {
        if (request == null) {
            return "unknown";
        }
        String ip = request.getHeader("x-forwarded-for");
        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("X-Forwarded-For");
        }
        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.getHeader("X-Real-IP");
        }

        if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
            ip = request.getRemoteAddr();
        }
        return ip;
    }
}

© 著作权归作者所有

JavaSon712
粉丝 11
博文 186
码字总数 34542
作品 0
延安
程序员
私信 提问
nginx做负载CDN加速获取端真实ip

在不用cdn的情况下,nginx做负载获取真实ip时,nginx配置如下: proxysetheader Host $host;proxysetheader X-Real-IP $remote_addr;proxysetheader X-Forwarded-For $proxyaddxforwardedfo......

lavafree
2012/12/22
0
0
nginx设置反向代理怎么获取客户端的真实IP和域名以供日志分析

版权声明:本文为EnweiTech原创文章,未经博主允许不得转载。 https://blog.csdn.net/English0523/article/details/80047851 nginx反向代理后,在应用中取得的ip都是反向代理服务器的ip,取得...

天府云创
2018/04/23
0
0
Nginx 不受 CDN 服务影响获取访客真实 IP

获取和记录站点访客的真实 IP 对于站点日志的分析和安全策略的指定很有帮助,Nginx 默认的日志记录获取到的 IP 地址如果站点启用了 CDN 服务,那么这里的 IP 地址都是 CDN 服务器节点的 IP 地...

dragon_tech
02/12
0
0
关于php获取ip真实地址

再获取真实ip的时候,可能由于物品链接不同导致获取不到真实ip,请问这个该怎么链接. 例如:当我们获取长城宽带ip的时候, 往往只能获取到分配给我们的dsn.但是这个其实不是真实ip....

ffvsnn520
2016/04/25
198
1
nginx反向代理获取用户真实ip

nginx做反向代理时,默认的配置后端获取到的ip都是来自于nginx,如何转发用户的真实ip到后端程序呢?如是是java后端,用获取到的是nginx的ip地址,而不是用户的真实ip. 修改nginx配置,如下: 在原来...

yysue
2018/09/29
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Leetcode PHP题解--D88 696. Count Binary Substrings

D88 696. Count Binary Substrings 题目链接 696. Count Binary Substrings 题目分析 给定一个01字符串,返回仅用连续的0和1串所能组成的二进制字符串个数。 例如,00110011,就包含0011,0...

skys215
今天
2
0
基础工具类

package com.atguigu.util;import java.sql.Connection;import java.sql.SQLException;import java.util.Properties;import javax.sql.DataSource;import com.alibaba.druid......

architect刘源源
今天
49
0
P30 Pro劲敌!DxO官宣新机:排行榜又要变

5月26日晚间,DxOMark官方推特预告,将在5月27日公布一款新机型的DxOMark评分,猜猜是哪款? 网友猜想的机型有:红米K20、谷歌Pixel 3a、索尼Xperia 1、诺基亚9 PureView等。 DxOMark即将公布...

linux-tao
昨天
16
0
Ubuntu18.04.2窗口过小不能自适应(二次转载)

解决Ubuntu在虚拟机窗口不能自适应 2018年09月06日 16:20:08 起不了名儿 阅读数 855 此博文转载:https://blog.csdn.net/nuddlle/article/details/77994080(原地址) 试了很多办法这个好用 ...

tahiti_aa
昨天
2
0
死磕 java同步系列之CountDownLatch源码解析

问题 (1)CountDownLatch是什么? (2)CountDownLatch具有哪些特性? (3)CountDownLatch通常运用在什么场景中? (4)CountDownLatch的初始次数是否可以调整? 简介 CountDownLatch,可以...

彤哥读源码
昨天
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部