首页/网络/协议速查/Referer 来源页面
HTTP 头与缓存70 条

Referer 来源页面

告诉服务器请求来自哪个页面(防盗链、来源统计的基础);规范中的拼写就是 Referer(历史笔误沿用)。

协议速查网络更新于 2026-10-13

Referer 告诉服务端从哪来

Referer 记录这次请求是从哪个页面发起的,最常见的用途是防盗链、来源统计与风控画像。规范里的拼写确实少了一个 r,这是早期标准留下的历史笔误,被一直沿用至今。发送多少内容由页面的 Referrer-Policy 决定,从完整 URL 到完全不发送都有对应取值;HTTPS 页面引用 HTTP 资源时,出于降级保护默认不发送。

基本信息

请求头名Referer(注意规范里就是这个拼写)
作用标识来源页面,用于防盗链、来源统计与风控
规范RFC 9110 第 10.1.3 节
发送粒度由页面响应头 Referrer-Policy 控制
默认行为现代浏览器默认近似 strict-origin-when-cross-origin
降级保护HTTPS 页面引用 HTTP 资源时默认不发送 Referer

防盗链与查看来源

防盗链与查看来源
curl -si -H 'Referer: https://www.example.com/page' https://static.example.com/a.jpg | head -3   # 带来源请求
curl -sI https://www.example.com/ | grep -i referrer-policy   # 查看站点声明的策略
# nginx 简单防盗链:只允许本站与白名单来源引用静态资源
# location ~* \.(jpg|png|mp4)$ {
#   valid_referers none blocked server_names *.example.com;
#   if ($invalid_referer) { return 403; }
# }

典型使用场景

  • 图片与视频防盗链:只允许本站页面引用媒体资源,减少被盗用产生的流量成本
  • 来源统计:分析站外流量来自哪些站点与页面
  • 风控联动:识别异常来源与批量脚本,作为判断特征的其中一维
  • 跳转归因:在落地页判断用户从哪个渠道进入
  • 内容合规:确认嵌入页面是否来自授权的合作方

Referrer-Policy 取值

取值发送内容适用场景
no-referrer完全不发送来源不需要来源统计的敏感页面
same-origin同源发完整 URL,跨源不发送站内流程页
strict-origin只发源(协议加域名加端口),降级时不发不需要路径信息的统计
strict-origin-when-cross-origin同源发完整 URL,跨源只发源,降级不发现代浏览器默认值,通用推荐
unsafe-url任何情况都发完整 URL,含路径与查询串有敏感参数泄漏风险,不建议使用
URL 里带的查询参数会随 Referer 一起发送给第三方域,包含令牌或者邮箱之类的参数会直接泄漏。跨域场景应显式设置 Referrer-Policy,不要依赖浏览器默认值。

易错点

  • 把空 Referer 当成「非浏览器直连」并直接放行,等于给脚本留了绕过防盗链的后门
  • HTTPS 页面引用 HTTP 资源时 Referer 缺失,防盗链规则会误杀合法的降级请求
  • 只按 Referer 做防盗链不做校验强度,伪造请求头一行 curl 就能绕过,应配合签名与时效参数
  • 站点声明了严格策略后又依赖完整 Referer 做统计,数据突然缺失却找不到原因

数据来源与参考

  • RFC 9110 §10.1.3 Referer
  • W3C Referrer Policy

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌