Nginx防止网站图片盗链(置换为其他图片)

我注意到有几个其他网站在转载本站文章,你转载就算了,不留出处也没有关系,只是你能不能不全文贴html,连他娘的图片网址都懒得改。我的小服务器流量、负载吃不消啊,如果流量大的时候就相当于遭到了DDOS攻击。

如果想要避免其他网站盗链自己Web服器上的图片,作法很简单,只要修改几行设置就可以了。以下我以Nginx为例。

Nginx防图片盗链设置

编辑配置文件,添加如下代码:

valid_referers是用来设置哪些网站可以引用本网站的图片,参数解释:

  • none:允许 request header 中没有包含 referer 的情况。
  • blocked:允许 request header 中有包含 referer,不过其内容已经被 proxy 或防火墙修改过,不是 http:// 或 https:// 开头的网址。
  • server_names:指定允许的 referer 网址。

上面设置了本网址可以引用图片,还有一些搜索引擎,而除了这些网站之外,其他的网站不允许直接链接本网站的图片。这样,其他网站在链接图片时,所有的图片就会变成无法显示。

把盗链的图片置换为其他图片

除了上面的配置,还有另外一种选择,即置换图片。你可以把盗链图片置换为广告图,这就相当于对方在给我们打广告;或替换为av封面图,恶搞一下等等。

首先准备一张要替换的图片(我PS了一个包含网址域名的图片)。

在上面配置的基础上添加:

由于重定向之后图片的 referer 还是一样没有改变,还要针对这个图片的网址加上一行空设定,让它不受到 referer 的影响。

如果你网站有很多图片盗链,经过上面设置之后,盗图的家伙们就有的忙了。

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注