编辑: 飞鸟 | 2015-08-24 |
如果从那个页面跳转到 http://idea.iteblog.com 将不会带上任何的Referer头信息. 再比如:http://idea.iteblog.com页面的Referrer Policies设置成 strict- origin,那么从这个页面跳转到 http://books.iteblog.com 或者 https://www.iteblog.com/archives/1929 将会带上值为http://idea.iteblog.com/的Referer头信息. 不过目前这种Referrer Policies浏览器可能不支持. origin-when-cross-origin 该策略在同源的链接中发送完整的URL,其他情况仅发送根域名.需要注意的是 https://www.iteblog.com 和https://www.iteblog.com 被认为是非同源的. 比如 https://www.iteblog.com/archives/1929 页面的Referrer Policies设置成 origin-when- cross-origin ,那么从它跳转到 https://www.iteblog.com/archives/1464 将会带上值为https://www.iteblog.com/archives/1929的Referer头信息;
如果从那个页面跳转到 http://idea.iteblog.com/ 页面(注意这里HTTP和HTTPS页面都可以),将会带上值为https://ww w.iteblog.com/的Referer头信息. 不过这种Referrer Policies在Chrome实现的时候被误写成了 origin-when-crossorigin . strict-origin-when-cross-origin 这种策略可以看做是 origin-when-cross-origin 和no-referrer-when-downgrade 的结合体. 对于同源请求,发送完整的URL;
对于同为https的页面,或者是从HTTP页面跳转到任何的页面( 包括HTTP和HTTPS)只发送根域名;
如果是从https页面跳转到http将不发送referrer. If a document at https://example.com/page.html sets a policy of strict-origin-when- cross-origin , then navigations to https://example.com/not-page.html would send a
3 /
5 Referer header with a value of https://example.com/page.html. Navigations from that same page to https://not.example.com/ would send a Referer header with a value of https://example.com/. Navigations from that same page to http://not.example.com/ would send no Referer header. unsafe-url 无论是否发生协议降级(HTTPS到HTTP),无论是本站链接还是站外链接,统统都发送 Referrer 信息.这是最宽松而最不安全的策略;
比如:https://www.iteblog.com/archives/1929 页面的Referrer Policies设置成 unsafe-url ,那么从它跳转到http://idea.iteblog.com/ 页面(注意这里HTTP和HTTPS页面都可以),将会带 上值为https://www.iteblog.com/archives/1929的Referer头信息. 如何设置 页面是设置Referrer Policies主要有以下几种 CSP 响应头 CSP(Content Security Policy),是一个跟页面内容安全有关的规范.在HTTP 中通过响应头中的 Content-Security-Policy 字段来告诉浏览器当前页面要使用何种 CSP 策略.: Content-Security-Policy: referrer 我们还可以在 里面设置: 标签 通过 标签也可以指定 Referrer 策略,同样很简单:
4 /
5 我们把 放在 ... 之间.注意,如果出现的位置不对会被忽略.同样,如果没有给它定义 content 属性,或者 content 属性为空,也会被忽略.如果 content 属性不是合法的取值,浏览器会自动选择 no- referrer 这种最严格的策略. 标签的 referrer 属性 通过给 标签增加 referrer 属性也可以指定 Referrer 策略,格式如下: 过往记忆 这种方式作用的只是这一个链接.并且, 标签可用的 Referrer 策略只有三种:no- referrer、origin 以及 unsafe-url .另外,这样针对单个链接设置的策略优先级比 CSP 和 要高. 解决百度统计无法获取https页的referrer 说到这里,如果我们想让百度统计能够统计到来源HTTPS的页面,我们有两种方式:(1)、 将自己的网站也升级到HTTPS(参考《在Nginx中使用Let'