评论

收藏

[Nginx] Nginx图片防盗链配置实例

web服务器 web服务器 发布于:2021-08-22 22:41 | 阅读数:189 | 评论:0

做运维的朋友经常会有一些烦恼,比如网站总是被人抄袭,比如网站总是被人引用上面的图片,虽然一张图两张图,并不耗费很多流量,但一旦引用的人多了,这个还是比较废流量的。
防盗链就是禁止其他网站引用自己网站资源而做的一系列设置,优点就不需要说了,绝多数就是防止资源浪费,特别是有宽带、流量限制的空间如果不做一些 限制可能就光引用自己网站图片、视频等等资源可能会消耗很大一部分流量。本文就简单的说一下在nginx服务器上如何做防盗链设置。
nginx防盗链代码
第1步:下载nginx网站配置文件。
有些网友可能是直接到服务器中使用vi或ee编辑器,另外网站配置有些可能是在nginx.conf文件中或是在vhost目录下,具体要看nginx.conf文件是如何配置的了。
第2步:添加以下代码,并保存。
复制代码代码如下:
location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$ { 
      expires 30d; 
      access_log off; 
      valid_referers none blocked *.aspku.net www.aspku.net *.youdao.com *.google.cn *.google.com *.google.com.tw *.google.com.sg *.google.com.hk image.soso.com bing.com cn.bing.com image.baidu.com; 
      if ($invalid_referer){ 
        rewrite ^/ http://www.zzvips.com/images/return.gif; 
      } 
    }
第3步:把保存网站配置文件上传并覆盖,到终端执行
/etc/init.d/nginx reload重新启动nginx即可生效。
因为系统不同nginx安装目录可能也不完全相同,简单的就说是重新启动nginx服务即可。
nginx防盗链代码说明:
复制代码代码如下:
location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$ { 
  expires 30d;#在客户浏览器缓存30天 
  access_log off; #以上扩展名文件(gif|jpg|jpeg|png|bmp|swf)不写入日志文件中。 
  valid_referers none blocked *.zzvips.com www.zzvips.com www.aspku.net *.youdao.com *.google.cn *.google.com *.google.com.tw *.google.com.sg *.google.com.hk image.soso.com bing.com cn.bing.com image.baidu.com; 
  #valid_referers none blocked允许访问的域名站点,后台就是跟着域名多个域名空格隔开。 
  #none 匹配没有Refer的访问,简单的说就是直接用URL访问这些扩展名的资源。 
  #blocked 支持域名前缀。 
  #除了允许直接访问的域名外,其他域名直接访问就直接显示下面的这种图片。 
  if ($invalid_referer){ 
    rewrite ^/ http://www.zzvips.com/images/return.gif; 
  }
这样设置过后,别人想要引用你网站里面的图片时候,就会发现,引用出来的图片都不是想要的了。

关注下面的标签,发现更多相似文章