【Nginx】Referer配置
server配置
server {
listen 80;
server_name localhost;
add_header X-Frame-Options SAMEORIGIN;
add_header Referer-Policy origin;
add_header Content-Security-Policy "frame-ancestors 'self'";
add_header X-Permitted-Cross-Domain-Policies "master-only";
add_header X-XSS-Protection "1; mode=block;";
add_header X-Download-Options SAMEORIGIN;
add_header X-Content-Type-Options nosniff;
add_header Strict-Transport-Security max-age=31536000;
proxy_set_header Host $host;
proxy_intercept_errors on;
}
页面通过meta配置控制
<meta name="referrer" content="no-referrer" />
页面配置no-referrer时,引荐来源网址政策: no-referrer,但是对CSS样式中引用的图片,页面上的该配置不起作用
referrer的值
no-referrer:所有请求不发送 referrer。
no-referrer-when-downgrade(默认值):当请求安全级别下降时不发送 referrer。目前,只有一种情况会发生安全级别下降,即从 HTTPS 到 HTTP。HTTPS 到 HTTP 的资源引用和链接跳转都不会发送 referrer。
same-origin:对于同源的链接和引用,会发送referrer,其他的不会。
origin:在任何情况下仅发送源信息作为引用地址。源信息包括访问协议和域名。
strict-origin:在安全级别下降时不发送 referrer;而在同等安全级别的情况下仅发送源信息。注意:这个是新加的标准,有些浏览器可能还不支持。
origin-when-cross-origin:同源的链接和引用,会发送完全的 referrer 信息;但非同源链接和引用时,只发送源信息。
strict-origin-when-cross-origin:同源的链接和引用,会发送 referrer。安全级别下降时不发送 referrer。其它情况下发送源信息。注意:这个是新加的标准,有些浏览器可能还不支持。
unsafe-url:无论是否发生协议降级,无论是本站链接还是站外链接,统统都发送 Referrer 信息。正如其名,这是最宽松而最不安全的策略。