Apache使用.htaccess防盗链禁止用户下载
今天遇到一个客户,做视频站的,用的是Html5播放器,最开始想隐藏真实地址,尝试了很多办法都没办法隐藏,最后尝试CK切段处理,但是用户体验效果不好,切段多了会出现卡顿情况。
最后没办法和客户商议后决定采用防盗链,禁止非绑定的域名访问下载视频,同样看了很多教程,完全是一脸懵逼不知道怎么操作。
只能不断尝试,最后还是给解决了,方法如下
SetEnvIfNoCase Referer "^http://youer.com" local_ref=1 SetEnvIfNoCase Referer "^http://www.youer.com" local_ref=1 <FilesMatch "\.(gif|jpb|png|css|js|swf|mp4)"> Order Allow,Deny Allow from env=local_ref </FilesMatch>
只需要将以上代码粘贴之.htaccess文件中并重启Apache即可;
需要注意的是SetEnvIfNoCase Referer可以无限添加,有多少域名就添加多少域名,
红色部分是需要防止盗链的文件后缀,设置比较多,建议CSS与JS还是不要屏蔽的好,屏蔽这么多属于无奈,客户要求。
重启Apache访问视频路径效果就出来了;防盗链会爆403错误,不用紧张属于正常;
有能力可以制作一个精美的403页面,或者找大搜下载一个就行。
在补充一点.htaccess虽然可以实现防盗链但是给的远程都是403页面,效果是很理想,有需要求的可以在研究下其他方式的防盗链,最好是有针对性的解决;
例如Png,gif,jpg 等给对应的错误图片,MP4给对应的错误视频,在给出的错误中添加网址效果会更好。
以上的.htaccess无法屏蔽迅雷及IDM的下载,国内常规下载都是迅雷,最好在.htaccess能够屏蔽迅雷下载。
作者:Alone°李道长ご
联系:WeChat(QQ):1969170027
-------------------------------------------------
如果觉得这篇文章对你有小小的帮助的话,点点左下角“👍”博主在此感谢!