简单理解:
- 防盗链:防止别人未经允许,直接在他们的网站上通过图片的 URL 加载你的图片,偷用你的流量和资源。
- Referer:HTTP 请求头中的一个字段,表示请求来源的页面地址。通过检测这个字段,可以判断请求是否来自允许的站点。
这个防盗链的核心:
- 利用 Nginx 的
ngx_http_referer_module模块,借助$invalid_referer变量和valid_referers指令设置允许的来源域名。 - 访问请求的图片时,如果
referer不符合白名单规则(如指定域名或子域名)则拒绝访问(返回 403)。 - 可以允许空 referer 或者被屏蔽的 referer,也可以禁止它们,依据防盗链强度要求进行配置。
适用场景:
- 普通网站的轻量级防盗链需求
- 防止非授权站点直接嵌入你的静态资源图片造成带宽浪费
不适用场景:
- 复杂、强安全需求的场景(比如付费内容保护、API 访问控制),此时推荐使用带签名的 URL 或鉴权机制。
总结:
这个配置方案属于 基于 Referer 的简单防盗链,通过检测 HTTP Referer 头是否来自允许的站点来拒绝非法请求,是一种常见且方便的静态资源防盗手段,但防护强度有限,因为 Referer 头容易被伪造。
作者:admin 创建时间:2025-10-20 16:31
最后编辑:admin 更新时间:2025-10-20 16:31
最后编辑:admin 更新时间:2025-10-20 16:31