我需要检查并记录我的网络应用程序访问者的推荐人。使用HTTP_REFERER
的可靠性如何?还有其他选择吗?
答案 0 :(得分:41)
使用HTTP_REFERER
不可靠,它的值取决于浏览器或客户端应用程序发送到服务器的HTTP Referer
标头,因此无法信任。
关于Referer
标题,15.1.2 of RFC2616部分说明:
因此,应用程序应该提供 尽可能多地控制这些信息 尽可能的提供者 信息。
和
我们建议,但不要求, 一个方便的切换界面 为用户提供启用或 禁用发送From和 推荐人信息。
许多在线隐私工具都会破坏这一价值,许多浏览器(如FireFox)长期以来都允许用户阻止此标头发送。简而言之,我不会为了任何严肃的目的而依赖它。例如,保护表单以便驱逐垃圾邮件发送者无法发布值,因为Referer
可能会被欺骗。
如需进一步阅读,请参阅:
Using referer field for authentication or authorization(WayBackMachine)