nginx--Nginx转发真实的IP

Nginx转发真实的IP

  • 前言
  • [给nginx.conf 设置proxy_set_header](#给nginx.conf 设置proxy_set_header)
  • [java 程序里获取](#java 程序里获取)

前言

在使用nginx的时候可能会遇到判断是不是本机在做操作,这样的话web端我们是可以通过ip和端口进行远程连接的这样的话我们就需要从后端获取到真实ip来判断是不是指定的机器了,本篇文章讲解的就是怎样通过nginx转发的时候带上真实ip

给nginx.conf 设置proxy_set_header

主要是设置X-Real-IP和X-Forwarded-For 需要和后台对应上

javascript 复制代码
		location /device/ {
            add_header Access-Control-Allow-Origin * always;
			proxy_set_header Host $http_host;
			proxy_set_header APIS $uri;
			proxy_pass http://192.168.22.56:9090/device/;
			proxy_cookie_path / "/; Secure";
			proxy_set_header X-Real-IP $remote_addr;
			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }

java 程序里获取

javascript 复制代码
 String ip = request.getHeader("x-forwarded-for");
 if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
            ip = request.getHeader("X-Real-IP");
   }
相关推荐
tod1131 天前
Reactor反应堆模式
网络·网络协议·tcp/ip·reactor·多路转接·tcpdump
IT研究所1 天前
IT 资产管理 (ITAM) 与 ITSM 协同实践:构建从资产到服务的闭环管理体系
大数据·运维·人工智能·科技·安全·低代码·自动化
Codefengfeng1 天前
分辨压缩包的真加密与伪加密
linux·运维·网络
014.1 天前
2025最新jenkins保姆级教程!!!
java·运维·spring boot·spring·jenkins
leifengzhy1 天前
Jenkins使用pipeline和maven创建项目
运维·jenkins·maven
白太岁1 天前
通信:(3) 高并发网络通信:epoll + 边沿触发 + 非阻塞 IO + tcp
c语言·网络·c++·网络协议·tcp/ip
码农阿豪1 天前
Jenkins Git 克隆失败深度解析:从 “Connection reset by peer“ 到彻底解决
运维·git·jenkins
暴力求解1 天前
Linux---进程(五)进程调度
linux·运维·服务器
wsad05321 天前
Linux 用户和组管理完整指南(中英文参数对照)
linux·运维·服务器
duration~1 天前
DHCP 协议详解
网络·网络协议·tcp/ip