30
我需要检查并记录我的Web应用程序访问者的推荐人。 HTTP_REFERER
有多可靠?还有其他的选择吗?HTTP_REFERER的可靠性如何?
我需要检查并记录我的Web应用程序访问者的推荐人。 HTTP_REFERER
有多可靠?还有其他的选择吗?HTTP_REFERER的可靠性如何?
使用HTTP_REFERER
是不可靠的,它的值取决于浏览器或客户端应用程序发送到服务器的HTTP Referer
标头,因此不能被信任。
关于Referer
标题,节15.1.2 of RFC2616状态:
因此,应用程序应该移到该信息 尽可能的那 信息的提供者提供 尽可能多的控制。
和
我们认为,虽然不要求, 一个方便的切换界面是为用户提供了启用或禁用 的发件人和 Referer的信息发送 。
许多在线隐私工具都破坏了这个值,许多浏览器如FireFox在很长一段时间内都允许用户阻止发送这个头文件。所以简而言之,我不会为了任何严肃的目的而依赖它。例如,确保表单的安全,以避免垃圾邮件发送者无法发布值,因为Referer
可能被欺骗。
进一步的阅读可见:
Using referer field for authentication or authorization(WayBackMachine)
同意引用者是不可靠的,它不是安全的,但相信我,它的工作很好地减少垃圾邮件。 – 2013-05-05 02:46:48
最后一个链接已死亡。 – danrah 2016-10-06 11:13:20
@danrah - 固定。但是,如果你发现死链接,然后看看它们是否在WayBackMachine(http://archive.org)上,然后用最新的可用存档副本更新该帖子。 – Kev 2016-10-06 14:04:32