"request.referer == nil"是否始终意味着直接流量?

Fel*_*ger 4 ruby http-referer ruby-on-rails httprequest ruby-on-rails-4

什么request.referer时候不返回任何内容,这是否始终意味着访问者没有通过链接执行请求 - 即她以某种方式手动输入所请求页面的地址?

还是有其他情况下request.referer返回nil(授予请求成功)?

Jak*_*b S 8

简答:不.

一般来说,引用者 - 与所有其他HTTP头一样 - 是用户提交的数据.用户提交的数据不应该受信任.

在我的脑海中,我可以想到这些场景,如果没有用户手动输入URL,就不会设置引荐来源.

可能还有其他情况(fx我不确定浏览器在新窗口中打开链接时如何处理引用).

然后是设置引荐来源但没有用户输入地址的情况; 特别是机器人 - 特别是推荐人 - 垃圾邮件.