Referer - HTTP 请求消息头中记录访客来源 URL 的部分 HTTP Referer 是 HTTP (HyperText Transfer Protocol 超文本传输协议) 请求消息 header 的一部分,当浏览器向 web 服务器发送请求时,一般会带上 Referer,告诉服务器我是从哪个页面链接过来的,服务器籍此获得一些信息再进行处理。 HTTP Referer 头允许客户端指定请求 URL 的源资源地址,这允许服务器生成回退链表,可用来登陆、优化 cache 等。也允许废除或错误的连接,由于维护目的可被追踪。如请求的 URL 没有自己的 URL 地址,Referer 就不会被发送。如指定的是部分 URL 地址,则此地址应该是一个相对地址。 HTTP Referer 用来表示从哪儿连结到目前网页,采用的格式是 URL。换句话说,借由 Referer,目前网页可检查访客是从哪里来的,这也常被用来对付伪造的跨网站请求。 Dereferer 则是将 Referer 所带资讯剥离,因此,网站将无法识别访客从何而来。 高效 所见即所得的 "HTML5 Bootstrap4 网页 IDE" 网站站群 集成开发环境 http://dt.digitser.cn/zh-CN/ide/ideweb/index.html 当访客访问网页时,Referer 或 Referring page 是前一网页的 URL。如是图片的话,通常指的就是图片所在的网页。在通过网页浏览器把请求消息送往网页服务器时,Referer 会被包含在 HTTP 请求方法中。 许多网站会把 Referer 记录下来,以便追踪使用者的动态,大部分的统计分析软件都能处理这种资讯。但 Referer 资讯可能存在隐私权问题,部分网页浏览器允许使用者不送出这种资讯。某些代理服务器和防火墙也可把 Referer 资讯过滤掉,以避免外部知道非公开的网站位置。 缺少 Referer资讯或可能造成某些问题:某些服务器会因为缺少正确 Referer资讯而进行阻挡,以避免未经授权的图片使用 (盗图) 或是其他对服务器有影响的行为。针对这样的阻挡,有些代理服务器软件则提供了针对特定网站送出假 Referer 资讯的功能。 譬如:从主页链接到一个朋友那里,他的服务器就能从 HTTP Referer 中统计出每天有多少用户点击我主页上的链接访问他的网站。 Referer 的正确英语拼法是 referrer。由于早期 HTTP 规范的拼写错误,为保持向后兼容就将错就错了。其它网络技术规范企图修正此问题,使用正确拼法,所以目前其拼法并不统一。 HTTP Referer 非常简单,比较多的是用于页面统计、资源防盗链等;但还是有一点值得注意:Referer 是不安全的,通过客户端设置可改变Request 中的值,所以,请尽量不要用来作为进行安全验证等。 扫一扫关注 德云社区 微信公众号 版权声明: 本文为独家原创稿件,版权归 德云社区,未经许可不得转载。 |