Referrer-Policy

Referrer-Policy 控制浏览器在跳转或请求资源时携带多少 Referer 信息,兼顾统计分析和隐私安全。

#type / concept #status / evergreen #tech / security #resource / http #platform / browser

[!info] related notes

Referrer-Policy

一句话定义

Referrer-Policy 控制浏览器在跳转或请求资源时,携带多少来源页面的 URL 信息(Referer)。

它要解决什么问题

浏览器默认会在请求头中携带 Referer,告诉服务器”我从哪个页面来的”。这有两面:

  • 有用:网站统计流量来源、防盗链、CSRF 检查
  • 有风险:URL 中可能包含敏感信息(token、用户 ID、搜索词),泄露给第三方

Referrer-Policy 让你在”需要来源信息”和”保护隐私”之间找到平衡。

常用策略值

no-referrer

Referrer-Policy: no-referrer

完全不发送 Referer。最安全,但第三方无法知道流量来源。

same-origin

Referrer-Policy: same-origin

同源请求带完整 Referer,跨源请求不带。

strict-origin-when-cross-origin

Referrer-Policy: strict-origin-when-cross-origin

推荐默认值。规则如下:

场景发送的 Referer
同源请求完整 URL(含路径和查询参数)
跨源 HTTPS → HTTPS只带 origin(不含路径)
HTTPS → HTTP不带

origin

Referrer-Policy: origin

所有请求都只带 origin,不带路径。跨源时也能让对方知道来源域名,但不暴露具体页面。

origin-when-cross-origin

Referrer-Policy: origin-when-cross-origin

同源带完整 URL,跨源只带 origin。和 strict-origin-when-cross-origin 的区别是:HTTPS → HTTP 时仍然带 origin。

unsafe-url

Referrer-Policy: unsafe-url

所有请求都带完整 URL。不推荐,会泄露敏感路径信息。

完整策略对比

策略同源跨源 HTTPS→HTTPSHTTPS→HTTP
no-referrer不带不带不带
no-referrer-when-downgrade完整 URL完整 URL不带
same-origin完整 URL不带不带
origin只 origin只 origin只 origin
strict-origin只 origin只 origin不带
origin-when-cross-origin完整 URL只 origin只 origin
strict-origin-when-cross-origin完整 URL只 origin不带
unsafe-url完整 URL完整 URL完整 URL

推荐配置

大多数网站

Referrer-Policy: strict-origin-when-cross-origin

兼顾:

  • 同源请求保留完整 URL(统计分析需要)
  • 跨源 HTTPS 只暴露 origin(保护路径隐私)
  • HTTPS→HTTP 不暴露任何信息(防止降级泄露)

完全不想暴露来源

Referrer-Policy: no-referrer

设置方式

HTTP 响应头

Referrer-Policy: strict-origin-when-cross-origin

HTML meta 标签

<meta name="referrer" content="strict-origin-when-cross-origin">

HTML meta 标签只影响当前页面发出的请求。响应头影响所有从该页面发起的请求。

边界与易混淆点

  • Referer 拼写错误是历史遗留:HTTP 规范中 Referer 少了一个 r,一直沿用至今。Referrer-Policy 的拼写是正确的。
  • Referrer-Policy 控制的是”请求发出时带多少”,不是”服务器收到多少”。
  • 它是页面级策略:通过响应头或 meta 标签设置后,影响该页面发出的所有请求(跳转、子资源等)。
  • no-referrer-when-downgrade 是旧版浏览器的默认值:现代浏览器通常默认 strict-origin-when-cross-origin
创建于 2026/5/24 更新于 2026/5/27