网站导航:首页-网络知识-referrer policy字段的值及其含义

referrer policy字段的值及其含义

最近更新:2020-05-23

在HTTP的请求头中有一个非常常见的字段referer,这个字段记录了页面的来源,但有时经常出于各种原因考虑,不想在请求的信息中携带这个字段,这时我们就可以通过设置referrer policy来告诉浏览器。

referrer policy字段的值

1.no-referrer

设置为此值时,浏览器将不发送referer字段。

2.no-referrer-when-downgrade

设置为此值时,当浏览器页面由HTTPS连接转跳到HTTP连接时不发送referer字段,其他情况(包括HTTP连接转跳到HTTP连接、HTTP连接转跳到HTTPS连接和HTTPS连接转跳到HTTPS连接)都发送完整的referer字段。

3.same-origin

设置为此值时,当浏览器转跳后的页面与转跳前的页面是同源的(协议、域名和端口都相同)则发送完整的referer字段,否则不发送referer字段。

4.origin

设置为此值时,浏览器一律发送只含有源信息(协议、域名和端口)的referer字段。

5.strict-origin

设置为此值时,当浏览器页面由HTTPS连接转跳到HTTP连接时不发送referer字段,其他情况发送只含有源信息的referer字段。

6.origin-when-cross-origin

设置为此值时,当浏览器转跳后的页面与转跳前的页面是同源的则发送完整的referer字段,否则发送只含有源信息的referer字段。

7.strict-origin-when-cross-origin

设置为此值时候,当浏览器转跳后的页面与转跳前的页面是同源的则发送完整的referer字段,当浏览器转跳后的页面与转跳前的页面不是同源的且浏览器页面由HTTPS连接转跳到HTTP连接时不发送referer字段,当浏览器转跳后的页面与转跳前的页面不是同源的且浏览器页面不是由HTTPS连接转跳到HTTP连接则发送只含有源信息的referer字段。

8.unsafe-url

浏览器一律发送只包含源信息、路径和查询字符串的referer字段(不包含锚点、用户名和密码)。

如何设置referrer policy字段

1.通过HTTP HEADER信息

当服务器返回网页的时候,可以通过HTTP HEADER发送Referrer-Policy字段。

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

2.通过meta标签

也可以使用meta标签,在网页头部设置。

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

3.通过referrerpolicy属性

aareaimgiframelink标签,可以通过referrerpolicy属性来设置referrer policy。

<a href="..." referrerpolicy="strict-origin-when-cross-origin" target="_blank">xxx</a>

rel属性

aareafrom三个标签可以通过添加rel="noreferrer"属性来让浏览器不发送referer字段。

(正文完)

如果您认为本文中存在问题或有任何不足之处,欢迎您在Github:Rivalsa/comment中提交issue

到底线啦,请:返回目录页|返回首页