本人配置如下:
location ~* \.(wma|wmv|asf|mp3|mmf|zip|rar|jpg|gif|png|jpeg|gif|swf|flv|mp4|pdf|docx|jmx|xlsx|xls|pptx)$ { #需要防盗链资源的文件类型
valid_referers *.busionline.com; #这是可以盗链的域名或IP地址
if ($invalid_referer) {
#这样设置能够防盗链,不断地302重定向很多次,可能会加重服务器的负担,所以不建议这么做,除非有单独的图片服务器支持
#rewrite ^/ https://www.27wy.cn:90/picture/images/details-image-1.jpg; #如果有人非法盗链资源,则返回一张防盗链的图片
return 403; #或者返回403错误代码
}
expires 1d;
}
对于一些站点上的下载操作,有很多的下载来源不是本站,是迅雷、flashget, 源源不断的带宽,防盗链绝对是当务之急!使用来源判断根本不靠谱,只能防止一些小白站点的盗链,迅雷之类的下载工具完全无效;
如果是nginx配置的站点,可以使用secure link来完美解决这个问题,远离迅雷.
以下Nginx的盗链配置,仅用于下载服务器的下载防盗链,不适用于图片防盗链:
server {
listen 80;
server_name xxxx.com;
access_log /data/logs/nginx/xxx.com.access.log main;
index index.html index.php index.html;
root /data/site/xxx.com;
location / {
secure_link $arg_st,$arg_e;
secure_link_md5 wangshibo.com$uri$arg_e;
if ($secure_link = "") {
return 403;
}
if ($secure_link = "0") {
return 403;
}
}
}