aboutsummaryrefslogtreecommitdiff
path: root/files/zh-cn/web/http/headers/referer/index.html
blob: da48e9354cd44772583664576f86717baa673a87 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
---
title: Referer
slug: Web/HTTP/Headers/Referer
tags:
  - 引用
  - 消息头
  - 请求头
translation_of: Web/HTTP/Headers/Referer
---
<div>{{HTTPSidebar}}</div>

<p><code><strong>Referer</strong></code> 请求头包含了当前请求页面的来源页面的地址,即表示当前页面是通过此来源页面里的链接进入的。服务端一般使用 <code>Referer</code> 请求头识别访问来源,可能会以此进行统计分析、日志记录以及缓存优化等。</p>

<p>需要注意的是 referer 实际上是 "referrer" 误拼写。参见 {{interwiki("wikipedia", "HTTP_referer", "HTTP referer on Wikipedia")}} (HTTP referer 在维基百科上的条目)来获取更详细的信息。</p>

<div class="warning">
<p><code>Referer</code> 请求头可能暴露用户的浏览历史,涉及到用户的隐私问题。</p>
</div>

<p>在以下两种情况下,<code>Referer</code> 不会被发送:</p>

<ul>
 <li>来源页面采用的协议为表示本地文件的 "file" 或者 "data" URI;</li>
 <li>
  <p>当前请求页面采用的是非安全协议,而来源页面采用的是安全协议(HTTPS)。</p>
 </li>
</ul>

<table class="properties">
 <tbody>
  <tr>
   <th scope="row">Header type</th>
   <td>{{Glossary("Request header")}}</td>
  </tr>
  <tr>
   <th scope="row">{{Glossary("Forbidden header name")}}</th>
   <td>yes</td>
  </tr>
 </tbody>
</table>

<h2 id="语法">语法</h2>

<pre class="syntaxbox">Referer: &lt;url&gt;
</pre>

<h2 id="指令">指令</h2>

<dl>
 <dt>&lt;url&gt;</dt>
 <dd>当前页面被链接而至的前一页面的绝对路径或者相对路径。不包含 URL fragments (例如 "#section") 和 userinfo (例如 "https://username:password@example.com/foo/bar/" 中的 "username:password" )。</dd>
</dl>

<h2 id="示例">示例</h2>

<pre>Referer: https://developer.mozilla.org/en-US/docs/Web/JavaScript</pre>

<h2 id="规范">规范</h2>

<table class="standard-table">
 <tbody>
  <tr>
   <th scope="col">Specification</th>
   <th scope="col">Title</th>
  </tr>
  <tr>
   <td>{{RFC("7231", "Referer", "5.5.2")}}</td>
   <td>Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content</td>
  </tr>
 </tbody>
</table>

<h2 id="浏览器兼容性">浏览器兼容性</h2>

<p>{{Compat("http.headers.Referer")}}</p>

<h2 id="相关内容">相关内容</h2>

<ul>
 <li>{{interwiki("wikipedia", "HTTP_referer", "HTTP referer on Wikipedia")}}</li>
 <li>{{HTTPHeader("Referrer-Policy")}}</li>
</ul>