nginx下配置网站防盗链教程

2023-09-02 0 534

nginx下配置网站防盗链教程

正文:

为了降低建站成本,许多站长选择使用较小的服务器,并额外添加 CDN 和云存储等功能来减轻服务器的负担。然而,这些功能大多需要付费。

如果将自己网站的图片链接地址让别人复制,那么自己的 CDN 流量将会迅速消耗,而且花费的金钱将无法得到好处。

因此,今天汇站将介绍如何在宝塔面板中设置防盗链功能。

宝塔面板如何设置图片防盗链:
1. 登录宝塔面板,进入网站设置页面,然后开启防盗链功能。

2. 接下来,在面板中找到网站的文件配置,查找以下代码:

 #SECURITY-START 防盗链配置
    location ~ .*\.(jpg|jpeg|gif|png|js|css)$
    {
        expires      30d;
        access_log off;
        valid_referers none blocked *.www.huizhanii.com huizhanii.com;
        if ($invalid_referer){
           return 404;
        }
    }
#SECURITY-END  

下面来详细介绍上述代码的作用和意义:

首先,我们设置了防盗链文件类型,包括了图片(jpg、jpeg、gif、png)以及脚本和样式文件(js、css)。您可以根据需要自行修改这些文件类型,每个文件类型之间使用竖线符号(|)分隔。

接下来,我们设置了白名单,允许指定的域名来链接这些文件。在这里,我们设置了 none、blocked、*.waizhuti.com 和 waizhuti.com 作为白名单。您可以根据您自己的域名来修改这些设置。其中,*.wuyanshuo.com 表示允许所有子域名链接,多个域名之间使用空格分隔。

然后,我们使用 rewrite 指令来替换盗链网站的图片。这里我们将所有盗链的图片替换为一个名为 404.jpg 的图片,您需要将 XXX 替换为实际图片所在的域名。需要注意的是,这个图片应该放在没有设置防盗链的网站上,因为如果放在防盗链网站上,由于防盗链的限制,该图片将无法显示,而盗链者的网站上的图片将显示为一个 X 符号。

通过以上设置,我们实现了 nginx 的真正意义上的防盗链。然而,需要注意的是,这种方式并不能完全防止盗链。如果用户直接在浏览器中输入图片地址,仍然可以显示图片,并且可以通过右键另存为的方式下载文件。
我们来看第三行:valid_referers none blocked *.waizhuti.com waizhuti.com;

valid_referers 里多了“none blocked”

我们把“none blocked”删掉,改成

valid_referers *.waizhuti.com waizhuti.com;

nginx 彻底地实现真正意义上的防盗链完整的代码应该是这样的:

我们来看第三行:valid_referers none blocked *.huizhanii.com huizhanii.com;

valid_referers 里多了“none blocked”

我们将“none blocked”删除,并修改为

valid_referers *.waizhuti.com waizhuti.com;

nginx 完整的代码实现了真正意义上的防盗链。

代码如下:

  location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
 valid_referers *.huizhanii.com huizhanii.com;
 if ($invalid_referer) {
  rewrite ^/ http://www.XXX.com/images/404.jpg;
  #return 404;
 }
 expires  30d;
} 

结语:

如果有任何问题请在下方留言。

本文章已结束,如转载请注明:汇站网 » nginx 下配置网站防盗链教程

收藏 (0)

微信支付 微信扫一扫

支付宝支付 支付宝扫一扫

打赏二维码
点赞 (0)

站长资源下载中心-找源码上汇站

常见问题
  • 如果付款后没有弹出下载页面,多刷新几下,有问题联系客服!
查看详情
  • 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。
查看详情

相关文章

联系官方客服

为您解决烦忧 - 24小时在线 专业服务