如何在ruby中获取IP地址,引用和用户代理?

我想记录用户的IP地址,引用和用户代理。
在PHP中,我可以从以下变量中获取它们:

$_SERVER['REMOTE_ADDR'] $_SERVER['HTTP_REFERER'] $_SERVER['HTTP_USER_AGENT'] 

如何让他们在ruby?

你需要数组request.env

request.env['REMOTE_ADDR']:

PHP嵌入在Web服务器中。 Ruby是一种通用语言:如果您需要Web服务器上下文,则必须自己安装它。 幸运的是,这很容易。

最简单的入门方式之一是Sinatra 。 安装gem:

 gem install sinatra 

然后创建myapp.rb:

 require 'sinatra' get '/' do request.user_agent end 

启动Web服务器:

 ruby -rubygems myapp.rb 

访问Sinatra的默认URL: http:// localhost:4567 /

Etvoilà。

我假设你用ruby你的意思是ruby在轨道上,以下链接向您展示如何访问它们:

http://techoctave.com/c7/posts/25-rails-request-environment-variables