【发布时间】:2011-04-22 17:21:57
【问题描述】:
我有 Rails 2.3.8、Ruby 1.8.7、Mongrel Web Server 和 MySQL 数据库。
我处于开发模式,我需要找到真实的IP地址
当我使用 request.remote_ip 时,我得到的 IP 为 127.0.0.1
我知道我收到了127.0.0.1,因为我正在本地机器上开发.. 但是即使我在本地机器上,有没有办法获取真实的 IP 地址?
我在我的控制器中使用下面提到的这些,我得到的只是127.0.0.1,它们都在视图中。
request.remote_ip
request.env["HTTP_X_FORWARDED_FOR"]
request.remote_addr
request.env['REMOTE_ADDR']
【问题讨论】:
-
这是因为你是在本地机器上开发的。如果此代码在服务器上,并且您从客户端访问该页面,您将获得 真实 IP 地址。
-
尝试使用您的“真实”地址访问服务器。所以不要去 127.0.0.1,而是去你的“外部 ip”。不要忘记运行服务器来监听该地址!
标签: ruby-on-rails ip-address geocoding