关于header里的referer的解释

    xiaoxiao2023-10-16  22

    referrer

    referrer是http请求header的报文头,用于指明当前流量的来源参考页面。通过这个信息,我们可以知道访客是怎么来到当前页面的。这对于web analytics非常重要,可以用于分析不同渠道流量分布、用户搜索的关键词等。

    但是,这个字段同时会造成用户敏感信息泄漏(如:带有敏感信息的重置密码url,若被web analytics收集,则存在密码被重置的危险)。

    referrer policy states

    新的referrer规定了五种策略:

    no referrer:任何情况下都不发送referrer信息

    no referrer when downgrade:仅当协议降级(如https页面引入http资源)时不发送referrer信息。是大部分浏览器默认策略。

    origin only:发送只包含host部分的referrer.

    unsafe url:全部都发送referrer信息。最宽松最不安全的策略。

    referrer具体设置

    content-security-policy: referrer no-referrer|no-referrer-when-downgrade|origin|origin-when-cross-origin|unsafe-url;

    标签

    html页面的meta标签指定。

     

    如果content属性不是合法的取值,浏览器会自动选择no-referer策略。

    <meta name="referrer" content="no-referrer|no-referrer-when-downgrade|origin|origin-when-crossorigin|unsafe-url">

    标签的referer属性

    作用的只是当前标签。

    策略只有三中:不传、直传host都传。

    针对单个链接设置的策略优先级比csp和要高。

    <a href="http://example.com" referrer="no-referrer|origin|unsafe-url">xxx</a>

     

    最新回复(0)