kar*_*m79 85
从您的控制器:
request.remote_ip
Run Code Online (Sandbox Code Playgroud)
如果你在mongrel前面使用apache,那么remote_ip将返回请求的源地址,在这种情况下,它将是本地主机,因为Apache Web服务器正在发出请求,所以请将它放在你的控制器中:
@remote_ip = request.env["HTTP_X_FORWARDED_FOR"]
Run Code Online (Sandbox Code Playgroud)
要获取服务器IP,请参阅:
Sen*_*ran 35
谢谢:karim79和Titanous.
在Controller中编写代码
对于客户IP:
request.remote_ip
@remote_ip = request.env["HTTP_X_FORWARDED_FOR"]
Run Code Online (Sandbox Code Playgroud)
对于服务器IP:
require 'socket'
def local_ip
orig, Socket.do_not_reverse_lookup = Socket.do_not_reverse_lookup, true # turn off reverse DNS resolution temporarily
UDPSocket.open do |s|
s.connect '64.233.187.99', 1
s.addr.last
end
ensure
Socket.do_not_reverse_lookup = orig
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
48986 次 |
| 最近记录: |