Referer 头

Baseline 已广泛支持

此特性已相当成熟,可在许多设备和浏览器版本上使用。自 ⁨2015 年 7 月⁩以来,各浏览器均已提供此特性。

HTTP Referer 请求头包含请求资源的绝对或部分地址。Referer 头允许服务器识别人们访问的来源页面或使用请求资源的页面。此数据可用于分析、日志记录、优化缓存等。

当您点击一个链接时,Referer 包含包含该链接的页面的地址。当您向另一个域发出资源请求时,Referer 包含使用请求资源的页面的地址。

Referer 头可以包含路径查询字符串,但可能不包含URL 片段(即 #section)或 username:password 信息。请求的referrer 策略定义了可以包含的数据。有关更多信息示例,请参阅 Referrer-Policy

如果 referrer 策略允许,Referer 也应该在跟随 Refresh 响应(或等效的 <meta http-equiv="refresh" content="...">)的请求中发送,该响应导致导航到新页面。

注意: 头名称“referer”实际上是“referrer”一词的拼写错误。有关更多详细信息,请参阅 维基百科上的 HTTP referer

警告: 此头可能对用户安全和隐私产生不良后果。有关更多信息和缓解提示,请参阅 Referer 头:隐私和安全问题

头类型 请求头
禁止请求头

语法

http
Referer: <url>

指令

<url>

发出请求的网页的绝对或部分地址。URL 片段(即 #section)和用户信息(即 https://username:password@example.com/foo/bar/ 中的 username:password)不包含在内。源、路径和查询字符串可以包含在内,具体取决于referrer 策略

示例

http
Referer: https://mdn.org.cn/en-US/docs/Web/JavaScript
Referer: https://example.com/page?q=123
Referer: https://example.com/

规范

规范
HTTP 语义
# field.referer

浏览器兼容性

另见