简单理解:

  • 防盗链:防止别人未经允许,直接在他们的网站上通过图片的 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