https 跳转到 http 时的 Referer 丢失问题

2017-03-02 12:18:53 +08:00
 Livid

根据 W3C RFC 2616 里的规则( https://www.w3.org/Protocols/rfc2616/rfc2616-sec15.html#sec15.1.3 ),在 https 的网站上点击 http 链接时, Referer 并不会发送到 http 目的地。

Clients SHOULD NOT include a Referer header field in a (non-secure) HTTP request if the referring page was transferred with a secure protocol.

如果希望在这种情况下保持发送 Referer ,那么可以在页面中加入下面的这个 header :

<meta name="Referrer" content="origin" />

目前的主流浏览器都已经支持这个头部,除了 IE 系列:

http://caniuse.com/#feat=referrer-policy

下面是关于这个标签的具体解释:

https://w3c.github.io/webappsec-referrer-policy/

6425 次点击
所在节点    SSL
5 条回复
dant
2017-03-02 13:12:11 +08:00
要的就是这个 feature (逃
LukeXuan
2017-03-03 09:54:27 +08:00
看起来登录失败原因是这个 append
RihcardLu
2017-03-03 10:00:24 +08:00
还有一个,直接在浏览器输入地址时 refer 首部并不会被添加,同一窗口打开外链 refer 首部会被添加
raquant
2017-03-18 12:01:50 +08:00
好东西!
kslr
2018-11-16 20:21:08 +08:00
没想到是可以接受 Referrer 的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/344308

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX