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");
   }
相关推荐
JZC_xiaozhong7 小时前
数据不互通、审批慢?企业多系统智能协同与流程自动化解决方案
运维·自动化·流程管理·流程自动化·数据集成与应用集成·流程监控·流程可视化设计
爱学习的小囧7 小时前
ESXi 8.0 原生支持 NVMe 固态硬盘吗?VMD 配置详解教程
linux·运维·服务器·esxi·esxi8.0
坚持就完事了7 小时前
Linux中的变量
linux·运维·服务器
hERS EOUS7 小时前
nginx 代理 redis
运维·redis·nginx
Cat_Rocky8 小时前
利用Packet Tracer网络实验
linux·运维·服务器
被摘下的星星8 小时前
网际协议(IP协议)
网络·tcp/ip
嵌入式×边缘AI:打怪升级日志8 小时前
Linux 驱动实战:SR501 人体红外传感器驱动开发与调试全记录
linux·运维·驱动开发
正点原子8 小时前
【正点原子Linux连载】第三章 U-Boot使用 摘自【正点原子】ATK-DLRK3568嵌入式Linux驱动开发指南
linux·运维·驱动开发
忍冬行者8 小时前
MongoDB 三节点副本集离线部署运维手册
运维·数据库·mongodb
爱学习的小囧9 小时前
ESXi VMkernel 端口 MTU 最佳设置详解
运维·服务器·网络·php·虚拟化