什么是防盗链:简单地说,就是某些不法网站未经许可,通过在其自身网站程序里非法调使用其余网站的资源,而后在自己的网站上显示这些调使用的资源,使得被盗链的那一端消耗带宽资源 (1) 根据 HTTP referer 实现防盗链:referer 是 HTTP的一个首部字段,使用于指明使用户请求的 URL 是从哪个页面通过链接跳转过来的(2) 根据 cookie 实现防盗链:cookie 是服务器贴在用户端身上的 "标签" ,服务器使用它来识别用户端
根据 referer 配置防盗链:
#第一种,匹配后缀
location ~ .*\.(gif|jpg|jpeg|png|bm|swf|flv|rar|zip|gz|bz2)$ { # 指定需要用防盗链的媒体资源
access_log off; # 不记录防盗链的日志
expires 15d; # 设置缓存时间
valid_referers none blocked *.test.com *.abc.com; # 表示这些地址可以访问上面的媒体资源
if ($invalid_referer) { # 假如地址不如上面指定的地址就返回403
return 403
}
}
#第二种,绑定目录
location /images {
root /web/www/img;
vaild_referers nono blocked *.spdir.com *.spdir.top;
if ($invalid_referer) {
return 403;
}
}