解决nginx中不能获取真实ip的可能

存在题目中的问题时,我们可能有这几种情况:

1、使用了CDN服务;

2、使用了反向代理服务

目前在主流的网站部署下,很多的网站都使用了CDN这一技术,以解决某种情况下的性能压力或安全等方面的可能,那么使用了CDN后,可想而知,多了一次路径。CDN的路径会干扰到你物理服务器在获取用户数据,其中最为明显的就是用户的浏览器标识和用户的真实IP,在未使用CDN前,我们一般通过remote_addr来直接获取,但是使用了CDN后,我们需要换种思路了。

其实CDN厂商已经帮我们考虑好了,我们只要改remote_addr为$proxy_add_x_forwarded_for即可,为什么?因为CDN厂商帮我们中转了一下用户的信息。

好了,再谈第二个,使用了反向代理,这也是主流部署下的一种技术方案,简单地理解就是负载均衡。这种情况下,导致无法获取直接信息的可能,是部署人员自己的问题,为何这么说?

在nginx配置中的location节点中加入以下内容:

proxy_set_header Host $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;

你会发现问题都已经解决了,好了,伊凡门户就祝你好运了~

相关推荐:
当设置cookie的过期时间$expire 为0时, 表示cookie的保存时间与浏览器进程一致,在浏览器进程未关闭状态,cookie均会存在,浏览器关闭后cookie会消失,php 手册上的解释为 “If set to 0, or omitted, the c …
背景信息: 2019年4月17日,监测到Spring官方发布安全公告,披露Spring Cloud Config服务器存在远程任意文件读取漏洞(CVE-2019-3799)。黑客可通过漏洞直接遍历服务器任意磁盘文件,风险较大。 漏洞描述: S …
CSRF是Cross Site Request Forgery的缩写(也缩写为CSRF),直译过来就是跨站请求伪造的意思,也就是在用户会话下对某个CGI做一些GET/POST的事情。这些事情用户未必知道和愿意做,你可以把它想做HTTP会话劫 …
想搞明白Office的VOL(批量授权)版和RETAIL(零售)版有什么区别? RETAIL版不可选择安装路径、不可自定义安装组件,可在office内进行更新。(似乎这一功能是office2016才有的,区别于之前的office更新只 …
URLScan 是一款 IIS 的安全辅助工具,它可以帮助管理员来加强服务器的安全,它先于 IIS 对用户的请求进行处理,从而使得各项请求符合管理员的规则设置,极大的预防和封堵住各项漏洞的利用和入侵 …
拿起手机扫一扫即可带走我!