nginx 图片防盗链 设置

Posted COCO歧

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx 图片防盗链 设置相关的知识,希望对你有一定的参考价值。

打开对应站点的conf配置文件,主要配置代码如下:

location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$
{
  valid_referers none blocked *.XXXXX.com;//许可的网站
  if ($invalid_referer) {

    rewrite ^/ http://www.XXXXX.com/error.jpg; #重定向的新图片网址 
    #return 403; #403错误
  }
  expires 30d;
}

valid_referers指定资源访问是通过以下几种方式为合法,即白名单,允许文件链出的域名白名单。
none:直接通过url访问,无referer值的情况;
blocked:referer值被防火墙修改;

if判断如果用户请求的资源不符合上述配置,那么rewrite重定向到你想指定的url上,也可以配置403权限错误。

如果把 valid_referers none blocked 的none blocked 去掉就是:直接在浏览器地址栏中输入对应的图片地址也会被拒绝访问。

注:如果图片使用了CDN,那么在nginx上的防盗链就不起作用了,可以找CDN运营商,他们会有一整套资源防盗链方法,大多在CDN管理平台直接设置即可,比如阿里云CDN,其原理也是判断referer。

 

以上是关于nginx 图片防盗链 设置的主要内容,如果未能解决你的问题,请参考以下文章

nginx图片防盗链

nginx图片及目录防盗链设置

Nginx修改配置实现图片防盗链

nginx 实现图片防盗链功能

nginx 实现图片防盗链功能

nginx 实现图片防盗链功能