[英]How to get client IP and Server IP using Rails
任何人都可以幫助如何使用Ruby on Rails獲取客戶端IP和服務器IP?
從您的控制器:
request.remote_ip
如果你在mongrel前面使用apache,那么remote_ip將返回請求的源地址,在這種情況下,它將是本地主機,因為Apache Web服務器正在發出請求,所以請將它放在你的控制器中:
@remote_ip = request.env["HTTP_X_FORWARDED_FOR"]
要獲取服務器IP,請參閱:
謝謝:karim79和Titanous。
在Controller中編寫代碼
對於客戶IP:
request.remote_ip
@remote_ip = request.env["HTTP_X_FORWARDED_FOR"]
對於服務器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
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.