我需要检查并记录访问者对我的 Web 应用程序的引用。使用可靠HTTP_REFERER
吗?还有其他选择吗?
问问题
31668 次
1 回答
49
usingHTTP_REFERER
不可靠,它的值取决于Referer
浏览器或客户端应用程序发送到服务器的 HTTP 标头,因此不能信任,因为它可以被操纵。
关于Referer
标头,RFC2616 的第 15.1.2节指出:
因此,应用程序应该尽可能多地向该信息的提供者提供对该信息的控制。
和
我们建议(但不要求)为用户提供一个方便的切换界面来启用或禁用 From 和 Referer 信息的发送。
许多在线隐私工具破坏了此值,并且许多浏览器(例如 FireFox)长期以来一直允许用户阻止发送此标头。所以简而言之,我不会为了任何严肃的目的而依赖它。例如,保护表单以使路过的垃圾邮件发送者无法发布值,因为它们Referer
可以被欺骗。
如需进一步阅读,请参阅:
使用referer字段进行身份验证或授权(WayBackMachine)
于 2011-05-16T22:05:22.020 回答