request.referrer仅适用于localhost上的URL

时间:2012-06-07 11:32:51

标签: ruby-on-rails rack

我想获得推荐人网址。 到目前为止,我已经尝试了以下方法:

request.referer
request.referrer
request.headers["HTTP_REFERER"]

只有当我从localhost:3000跟随URL时,它们才能正常工作。 如果我在外部网站http://localhost:3000上创建链接并点击它,则所有这些方法都会返回nil

即使用户来自外部网站,如何避免此类行为并获取实际的引荐网址?

2 个答案:

答案 0 :(得分:2)

尝试使用request.env ['HTTP_REFERER']。

答案 1 :(得分:0)

  1. 不要使用webrick&确保您的网站未在开发中运行
  2. 激活引荐网址,确保链接嵌入其他网站。我刚刚在我正在使用的任何网页上注入了一个链接" stackoverflow"然后点击那里的链接
  3. 终于为我工作了,下面是结果 p request.referer

    enter image description here