A、限制图片/页面/视频等资源不被外站直接引用(或盗用)。
B、在技术实现上,是通过判断请求 HTTP 头的 Referer 字段来实现的,所以请求头中(request http header)存在 Referer 是必要的。
注意:
1. 当前主流浏览器/Chrome/Firefox等采用的referer默认安全策略为:no-referrer-when-downgrade 或 no-referrer。no-referrer-when-downgrade意思为安全降级后不提交Referer字段,举例,如果HTTPS页面中包含有HTTP的图片/视频等资源时,这些图片/视频被引用时,是不提交Referer引用URL地址的。no-referrer意思为根本就不提交Referer字段
2. 明确告诉浏览器在请求的时候提交Referer字段的方法有两种,一种是:可以在服务端返回的HTTP响应头(response http header)中增加字段 Referrer-Policy: origin-when-cross-origin。另外一种是:在HTML页面中内置Referrer Policy策略举例 <meta name="referrer" content="origin-when-cross-origin">
更多参考可以搜索关键词:Referrer-Policy
保护链地址URL:
要保护的页面地址URL。注:必须为正则表达式。
盗链时转向URL:
盗链发生时,返回给用户的盗链提示页面URL。
当请求头中不存在Referer字段时:
合法 - 浏览器的请求 Request HTTP 头中不存在 Referer 字段时,依然可以访问,认定为合法访问。
不合法 - 浏览器的请求 Request HTTP 头中不存在 Referer 字段时,不允许访问,认定为非法访问,并跳转到上面的"盗链时转向URL"。
注意:此配置选项从 3.8.1 开始支持,可以与 Referrer-Policy 策略配合使用。
引用链地址URL:
允许引用的URL,即当引用链URL在页面中直接引用保护链URL时,不会被当作非法盗链处理。例如:子域名站点,合作站点等等。
举例1:保护源站的常见图片(jpg|gif|png|ts|m3u8)等不被外站引用
a、保护链地址URL:^www\.fikker\.com/.+\.(jpg|gif|png|ts|m3u8)$
b、盗链时跳转URL:https://www.baidu.com/protect.jpg ,注:盗链时提示用户的图片/页面。
c、引用链地址URL:^fikker\.com/.*$ ,注:仅允许 fikker.com 域名下的页面引用。
d、引用链地址URL:^[0-9a-z]+\.fikker\.com/.*$ ,注:允许 www.fikker.com 或 bbs.fikker.com 等所有子站点引用(注意此规则不匹配fikker.com域名)。
<参看截图>