网站上传了一首mp3做背景音乐
,不久
,网站流量突然暴增,有几次甚至导致了VPS的当机
。后来经过分析:盗链这个MP3的网页包括诸如校内网
空间、QQ
空间、更有甚者还放到了Taobao小店、个人博客也有不少,全部作为了背景音乐,并且导致各种爬虫疯狂抓取这个文件
。找到了问题原因就只有一个办法了,就是利用Apache的mod_rewrite模块把盗链行为拒之门外。
利用.htaccess文件,设置图片mp3歌曲等的防盗链:
前提Apache中的mod_rewrite模块为激活状态,既然要消灭掉mp3文件的盗链就顺便也把图片盗链的设置给做了,下面是我在网站根目录的.htaccess文件中的配置,供同病相怜之人参考:
.htaccess文件中的代码:
以下为引用的内容:
RewriteEngineon
RewriteCond%{HTTP_REFERER}!^http://(www.)?*******.com/.*$[NC]
RewriteRule.(txt|doc|jpg|gif|mp3|zip|rar|png)$http://www.hacker.com.cn[R=301,L]
现在盗链的话,就会自动转向到我的主页。
功能:
不仅屏蔽/禁止非本网站的盗链访问,还将盗链请求转给自身的网站,让读者知道谁是真正的原创作者。
代码说明:
RewriteCond条件:意思就是所有的mp3、rar、图片等,访问如果referer不是本网站*******.com或www.hacker.com.cn,
RewriteRule规则:自动转向到本站主页:http://www.hacker.com.cn/
注释掉的部分是测试rewriteengine用的:对于调试mod_rewrite很有用。
其它防盗链的一些设置,大家可以参考:
以下为引用的内容:
#开启mod_rewrite引擎
RewriteEngineOn
#设置合法请求源
RewriteCond%{HTTP_REFERER}!^$[NC]
RewriteCond%{HTTP_REFERER}!zhangzhang.net[NC]
RewriteCond%{HTTP_REFERER}!google.com[NC]
RewriteCond%{HTTP_REFERER}!baidu.com[NC]
RewriteCond%{HTTP_REFERER}!yahoo.com[NC]
RewriteCond%{HTTP_REFERER}!msn.com[NC]
RewriteCond%{HTTP_REFERER}!bloglines.com[NC]
RewriteCond%{HTTP_REFERER}!feedburner.com[NC]
RewriteCond%{HTTP_REFERER}!feedsky.com[NC]
#指向警告页面
RewriteRule.*.(gif|jpg|png|mp3)$outlink.gif[L,NC]