从Nginx转发的请求中获取IP地址

从Nginx转发的请求中获取IP地址

  • Nginx转发请求
  • 获取IP地址

Nginx转发请求

想要从Nginx转发的请求中获取到IP地址,首先需要进行配置。
在Nginx配置文件nginx.con中,设置请求IP,如下

proxy_set_header X-Forwarded-For $remote_addr;

获取IP地址

完成配置后,再通过如下代码获取请求的 IP 地址

public String getIpAddress(HttpServletRequest request) {
    String ip = request.getHeader("X-Forwarded-For");
    if (ip == null || "".equals(ip)) {
        // 如果X-Forwarded-For中不存在信息,则直接从RemoteAddr属性中获取IP地址
        ip = request.getRemoteAddr();
    }
    return ip;
}

你可能感兴趣的:(nginx,tcp/ip,java)