解决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;

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

相关推荐:
说到Windows 7也许你还在为大家都知道的功能赞叹,其实,在Windows 7中有很多被大家忽略的功能,在这里就为大家总结出七个被忽略的实用功能。 也许您对Windows 7的Aero功能(Aero Snap、Aero Peek、Aero Sha …
httponly和secure两个标识是现代化浏览器对cookie安全保护的一大举措,我们来简单看下其作用。httponly是为了防护xss对cookie的劫持,在通用的攻击场景中,通过植入xss来劫持到管理者或用户的cookie,然后 …
平时用WinRAR对文件进行解压时速度会好慢,是不是其本身的设置问题导致的呢?伊凡门户作者经过一番测试后发现,确实是本身设置上有问题,下面来改变一下设置来提高解压缩速度。 打开WinRAR,单击选项→设置 …
在Linux系统上架设ASP.NET网站项目已经在圈子中流行,而“Mono+Jexus”架构模式是Linux承载ASP.NET企业级应用的极为重要的架构方式。 这种架构中,Jexus很好安装、配置,基本上就是一个下载、解压、复制的过 …
Win10以及之前的Win7/Win8/Win8.1在有密码的情况下会在登录画面要求用户输入密码,这是出于安全考虑。可有时候我们也许不想要输入密码,但又不想直接去掉密码。 有没有什么办法让Win10自动登录呢? 当然有 …
拿起手机扫一扫即可带走我!