当前位置:  开发笔记 > 运维 > 正文

为什么request.env ['REMOTE_ADDR']返回两个IP?

如何解决《为什么request.env['REMOTE_ADDR']返回两个IP?》经验,为你挑选了1个好方法。

当我在远程服务器上访问我的Rails 2.2应用程序时,我收到以下值作为我的REMOTE_ADDR.

request.env ['REMOTE_ADDR']:"75.184.124.93,10.194.95.79"

让我难过的是为什么有两个IP.快速检查我目前租用的公共IP,确认我的IP是75.184.124.93.

那么10.194.95.79来自哪里?

是否存在关于如何收集和报告我缺少的HTTP头规范中的远程地址的问题?这是预期的正常行为吗?



1> John Paul As..:

这绝对是因为反向代理.

反向代理(我经常使用BigIPs和Apache mod_proxy模式)通常会将所有插入的IP附加到列表中,以便您可以在代码中选择正确的IP.

例如,您可能希望找到要登录到webstats应用程序的公用文件,因此它位于REMOTE_ADDR中.但是你也有内部IP,所以你知道它来自哪个负载均衡器,哪个内部服务器用于某种内部网络跟踪,等等

推荐阅读
帆侮听我悄悄说星星
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有