利用Nginx的Referer防盗链

Nginx Referer模块并不能100%的去拦截站点,因为浏览器的Referer头内容可以伪造。若有特殊要求可以使用第三方模块ngx_http_accesskey_module~来实现公用key的防盗链,迅雷都可以防的哦亲。
那么我们开始来配置Nginx,还是以raspberry pi为基准,首先进入/etc/nginx/sites-available 打开default文件添加下面内容。
1.指定目录进行防盗链(推存使用):

location /usr/upload/photos/ {  
	valid_referers none blocked *.google.com *.google.cn *.google.com.tw *.google.hk *.bing.com *.baidu.com *.soso.com *.qq.com *.yahpp.com *.baiducontent.com *.googleusercontent.com raspiweb.dyndns.org;  
	if ($invalid_referer) 
	{  
		return   403;  
	}  
}

2.我们还可以整个站点防盗链

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {   
	valid_referers none blocked *.google.com *.google.cn *.google.com.tw *.google.hk *.bing.com *.baidu.com *.soso.com *.qq.com *.yahpp.com *.baiducontent.com *.googleusercontent.com raspiweb.dyndns.org; 
	if ($invalid_referer) 
	{   
		return 403; 
	}   
	expires 1d;
}

接着就大功告成了~
via


坐沙发

发表评论

你的邮件地址不会公开


*