• 当我们使用 Nginx 代理转发服务后,会发现我们无法获取客户端的真实IP地址,从而无法获取客户端的地理位置等信息。

1、原始配置文件如下

worker_processes  1;events {worker_connections  1024;
}http {include       mime.types;default_type  application/octet-stream;sendfile        on;keepalive_timeout  65;server {listen       80;server_name  localhost;location / {root   html;index  index.html index.htm;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}}}

2、配置转发后

worker_processes  1;events {worker_connections  1024;
}http {include       mime.types;default_type  application/octet-stream;sendfile        on;keepalive_timeout  65;server {listen       80;server_name  localhost;location / {root   html;index  index.html index.htm;}# 代理转发location /api/{proxy_set_header Host $http_host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header REMOTE-HOST $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header Public-Network-URL http://$http_host$request_uri;proxy_pass http://localhost:8080/;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}}}

这样,我们就将客户端的头部信息一起转发过去,就能获取用户的真实 IP 地址了

如您在阅读中发现不足,欢迎留言!!!

Nginx反向代理后无法获取客户端真实IP地址相关推荐

  1. PHP获取客户端真实IP地址的方法

    php获取客户端IP地址有四种方法,这五种方法分别为 1 2 3 4 REMOTE_ADDR HTTP_CLIENT_IP HTTP_X_FORWARDED_FOR HTTP_VIA REMOTE_A ...

  2. 获取客户端真实IP地址

    Java-Web获取客户端真实IP: 发生的场景:服务器端接收客户端请求的时候,一般需要进行签名验证,客户端IP限定等情况,在进行客户端IP限定的时候,需要首先获取该真实的IP. 一般分为两种情况: ...

  3. golang 获取客户端真实IP地址

    [Go]获取用户真实的ip地址 用户请求到达提供服务的服务器中间有很多的环节,导致服务获取用户真实的 ip 非常困难,大多数的框架及工具库都会封装各种获取用户真实 ip 的方法,在 exnet 包中也 ...

  4. asp.net如何获取客户端真实IP地址

    目前网上流行的所谓"取真实IP地址"的方法,都有bug,没有考虑到多层透明代理的情况. 多数代码类似: string IpAddress = (HttpContext.Curren ...

  5. java 获取客户端真实 ip 地址和 mac 地址

    现在都流行显示 ip 归属地,那么我先来获取客户端的真实 ip 地址以及 mac 地址,上代码 import javax.servlet.http.HttpServletRequest; import ...

  6. ASP如何获取客户端真实IP地址

    在ASP中使用 Request.ServerVariables("REMOTE_ADDR") 来取得客户端的IP地址, 但如果客户端是使用代理服务器来访问,那取到的就是代理服务器的 ...

  7. PHP获取客户端真实 IP 地址

    该函数将获取用户的真实 IP 地址,即便他使用代理服务器. function getRealIpAddr() { if (!emptyempty($_SERVER['HTTP_CLIENT_IP']) ...

  8. Apache 反向代理,Laravel获取用户真实IP

    文章目录 Apache (测试能够使用) 1. 激活加载remoteip模块 2. 定义代理与服务 3. 配置Apache日志格式以使用X-Forwarded-For 4. 结论 5. 参考链接 Ng ...

  9. vue获取url中ip_Kubernetes 集群中这样获取客户端真实 IP

    Kubernetes 依靠 kube-proxy 组件实现 Service 的通信与负载均衡.在这个过程中,由于使用了 SNAT 对源地址进行了转换,导致 Pod 中的服务拿不到真实的客户端 IP 地 ...

最新文章

  1. TCMalloc(Thread-Caching malloc) 基本设计原理
  2. confluence 编辑器这次没有加载_代码编辑器横评:为什么 VS Code 能拔得头筹
  3. Windows Phone 7范例游戏Platformer实战5——多点触控编程
  4. caffe:Data 层
  5. java基础-类加载学习笔记
  6. 从研究到应用:腾讯AI Lab的自然语言理解和生成
  7. 【2020牛客NOIP赛前集训营-提高组(第一场)题解】( 牛牛的方程式,牛牛的猜球游戏,牛牛的凑数游戏,牛牛的RPG游戏)
  8. LeetCode206:Reverse Linked List
  9. Codeforces 138C(区间更新+离散化)
  10. 【20171005】Luogu P1164 小A点菜
  11. 数据库:mongodb与关系型数据库相比的优缺点zz (转)
  12. D3.js制作地图等值线与饼图
  13. 微信公众号推送模板消息(一):申请微信公众帐号测试号
  14. Linux系统不同颜色文件代表什么意思?绿色、蓝色、白色、红色等代表的意义是什么?
  15. 有道无术,术尚可求;有术无道,止于术!
  16. linux删除桌面图标
  17. 实时语音视频通话SDK如何实现立体声(一)
  18. cmak(kafka Manager) 编译教程
  19. 苹果手机有护眼模式吗_玩手机还能护眼?用这 2 款 App,可能比开深色模式更有效...
  20. 读书笔记 摘自:《跟任何人都聊得来》

热门文章

  1. 【海康视频SDK】linux服务器端截图与下载视频
  2. Niagara Networks和Fortinet安全解决方案
  3. python 识图点击_Python图片识别找坐标(appium通过识别图片点击坐标)
  4. 柳絮会携带新冠病毒?这些新冠谣言别信!
  5. 神经网络中的阈值是什么
  6. 一个最低限度的国学书目
  7. android+腾讯地图h5,在uniapp H5项目中使用腾讯地图sdk
  8. $ 8 : gets函数与puts函数
  9. applewatch与服务器连接中断,千万不要买AppleWatch的5个原因!
  10. 回顾知识点:操作系统篇(二)