• Nginx反向代理+Tomcat+Springmvc获取用户访问ip


    Nginx+Tomcat+Springmvc获取用户访问ip

    1.Nginx反向代理 
    修改Nginx配置文件

    location / {
            ***********之前代码*******;
            proxy_set_header host                $host;
            proxy_set_header X-forwarded-for $proxy_add_x_forwarded_for;//设置代理服务器ip头,代码获取时的参数
            proxy_set_header X-Real-IP  $remote_addr; //允许将发送到被代理服务器的请求头重新定义或者增加一些字段,显示真实的客户端的IP
    }

    2.Springmvc代码中添加方法

                //Springmvc方法中添加HttpServletRequest request参数
                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("WL-Proxy-Client-IP");
                }
                if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
                    ip = request.getRemoteAddr();
                }
                Utils.log.info("【ip:" + ip + "】");//自己代码里的日志打印
  • 相关阅读:
    修改代码一般在测试服务器
    人很臭尽量往香里去做...
    救赎
    写的css十个错误
    如何debug看源代码
    办公室倒水
    程序和思维
    mousewheel.js 和scroll api
    drupal.behavior 和 document.ready 没有直接的关系
    revision in drupal
  • 原文地址:https://www.cnblogs.com/chen-lhx/p/7233963.html
Copyright © 2020-2023  润新知