HTTP 请求头部 referer

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HTTP 请求头部 referer相关的知识,希望对你有一定的参考价值。

原文地址:https://www.sojson.com/blog/58.html

HTTP 请求头部 referer

概述

  referer 是  HTTP  请求头部的一部分。当浏览器(或者模拟浏览器行为)向web 服务器发送请求的时候,头信息里有包含  Referer 。Referer的的作用是指示一个请求是从哪里链接过来,那么当一个请求并不是由链接触发产生的,那么自然也就不需要指定这个请求的链接来源,如:直接在浏览器的地址栏中输入一个资源的URL地址,那么这种请求是不会包含 Referer  字段的,因为这是一个“凭空产生”的 HTTP  请求,并不是从一个地方链接过去的。服务器允许 Referer  为空,意味着服务器允许浏览器直接访问。

技术图片

注:

  referer 的正确英语拼法是 referrer 。由于早期HTTP规范的拼写错误,为了保持向后兼容就将错就错了。其它网络技术的规范企图修正此问题,使用正确拼法,所以目前拼法不统一。还有它第一个字母是大写。

一、Referer的作用

1.防盗链

Referer=https://www.sojson.com

注:设置 Referer 限制访问资源的域名,资源服务器每次取到 Referer 来判断一下是不限定的域名:https://www.sojson.com。如果是就继续访问,不是就拦截。

2.防止恶意请求。

比如SOJSON网站上,静态请求是*.html结尾的,动态请求是*.shtml,那么由此可以这么用,所有的*.shtml请求,必须 Referer  为限定网站。

Referer=https://www.sojson.com

3、Referer

技术图片

服务器可以拒绝空referer的请求

技术图片

以上是关于HTTP 请求头部 referer的主要内容,如果未能解决你的问题,请参考以下文章

把token带到 http头部 或者验证一下referer

新浪图片停止外链后的一些解决办法

无效主机/ Referer请求标头的最合适的HTTP状态代码是什么?

第19期HTTP请求头referer

如何使用sublime代码片段快速输入PHP头部版本声明

[转帖]HTTP 头部解释