服务器配置

nginx文件防盗链配置方法

我的站长站 2023-09-28 人阅读

Nginx的核心模块中已经有了防盗链的相关功能。在配置Nginx之前,我们需要先确认Nginx是否开启了防盗链模块。如果没有开启,则需要重新编译Nginx或者安装对应的模块。

防盗链配置方法

Nginx的防盗链功能可以通过配置文件中的location指令来实现。我们需要在Nginx的虚拟主机配置文件中添加以下内容:

location ~* .(gif|jpg|jpeg|png|bmp)$ {
    valid_referers none blocked yourdomain.com;
    if ($invalid_referer) {
        return   403;
    }
}

以上代码表示只有在wdzzz.com站点上才允许外链。如果来源不是wdzzz.com,则会返回403错误,无法直接访问。

白名单配置方法

如果你需要允许某些网站或者IP地址外链,可以把它们添加到白名单中。在Nginx中,白名单可以通过valid_referers指令来实现。例如,我们可以把下面这段代码添加到配置文件中的防盗链规则中来添加白名单:

location ~* .(gif|jpg|jpeg|png|bmp)$ {
    valid_referers none blocked yourdomain.com example.com 192.168.0.1;
    if ($invalid_referer) {
        return   403;
    }
}

以上代码中,我们把wdzzz.com和example.com以及IP地址192.168.0.1添加到了白名单中,这些网站可以直接访问你的资源。

启用Rewrite模块

Nginx的Rewrite模块可以用于重写URL,我们可以利用Rewrite模块来隐藏源站的图片URL,从而增加盗链的难度,保护网站资源。我们需要在配置文件中添加以下内容:

if ($http_referer !~ ^http://(www.)?wdzzz.com(/|$)) {
    return 403;
}

以上代码表示如果来源不是你的网站,就返回403错误。通过这种方式,可以有效防止盗链行为。


相关推荐
  • 防盗链
  • Nginx配置
  • nginx文件防盗链配置方法

    Nginx的核心模块中已经有了防盗链的相关功能。在配置Nginx之前,我们需要先确认Nginx是否开启了防盗链模块。如果没有开启,则需要重新编译Nginx或者安装对应的模块。防盗链配置方法Nginx的防盗链功能可以通过配置文件中的location指令来实现。我们需要...

    服务器配置 16 4个月前
  • 一句话破解微信图片防盗链方法

    经常扒站的朋友应该了解,如果扒站是微信的,图片N多,微信图片又是不能引用的,只能下载下来,感觉实在是太麻烦了。因为这些图片有防盗链,如果网页直接引用的话会出现不可用,直接打开的话可以就直接用,所以就有了解决方法:<?phpheader("content-type:image/jpeg"...

    php教程 125 3年前
  • 利用web.config伪静态规则实现防盗链功能

    防盗链的几种简单方法第一种:加水印,盗链无非也就是盗取网站上的资源,一般资源图片居多,在就是视频了。通通加上网站水印,还可以让盗链者帮忙宣传下网站。第二种:装防盗链软件,一般的服务器软件都带这种功能,推荐使用宝塔,安全狗。第三钟:加伪静态规则,判断来路...

    经验分享 797 4年前
  • Nginx配置新手入门教程

    Nginx介绍Nginx是一个开源的高性能HTTP和反向代理服务器。它可以用于处理静态资源、负载均衡、反向代理和缓存等任务。Nginx被广泛用于构建高可用性、高性能的Web应用程序和网站。它具有低内存消耗、高并发能力和良好的稳定性,因此在互联网领域非常受...

    服务器配置 6 3个月前
  • nginx宝塔面板上传文件环境配置方法

    在使用nginx系统的宝塔面板开发上传或下载文件功能时,需要首先要配置下载nginx或PHP的参数。否则上传下载大文件时,总是报错,上传小一点的文件,就不报错。修改nginx配置打开nginx管理界面,看到“性能调整”,主要修改连接超时、最大上传文件大小,其他的也可...

    宝塔面板 46 1年前
  • nginx禁止直接访问目录或文件配置方法

    nginx禁止直接访问目录或文件,禁止后可以避免服务器文件直接暴露,用户无法通过链接访问下载某些目录文件。禁止访问某些后缀文件ini、conf后缀可以自行添加,通常为一些配置文件。location ~ \.(ini|conf|txt)$ {deny all;}禁止访问目录location ^~ /te...

    服务器配置 74 11个月前
最新更新