什么是盗链
盗链是指在自己的页面上展示一些并不在自己服务器上的内容。通常的做法是通过技术手段获得它人服务器上的资源地址,
绕过别人的资源展示页面,直接在自己的页面上向最终用户提供此内容。
比较常见的是一些小站盗用大站的资源(图片、音乐、视频),
对于这些小站来说,通过盗链的方法可以减轻自己服务器的负担,因为真实的空间和流量均是来自别人的服务器。
对大站造成的影响确实徒徒增加了服务器压力,用户、流量还不是自己的。
下面使用两台服务器来模拟这种情况
172.16.16.6 www.wawa.com 是正常的网站
172.16.16.6 www.wawawa.com 是盗链被阻止后跳转的网站
172.16.16.16 www.aaa.com 是盗链网站
本次实验需要基于Apache的虚拟主机和DNS这里就不介绍了。
先来看看不做防盗链是什么效果
首先配置172.16.16.6 www.wawa.com 正常主机的图片网站和阻止跳转网站
一样首先修改主配置文件 vim /etc/httpd/conf/httpd.conf 添加虚拟主机 和监听80端口
再来就是配置盗链网站172.16.16.16 www.aaa.com
弄好了服务器的配置就来验证网站的效果
正常网站
盗链网站 为了区分于正常网站,网站的文字稍作改变作为区分 微商城开发找上海捌跃网络科技有限公司
阻止网站
可以看到除了我修改的文字不同之外图片什么的无需配置直接就可以显示在盗链的网站上,这种情况肯定是要阻止的
下面来配置防盗链
使用yum 安装的肯定是有这个模块的 不放心的可以检查一下
[root@localhost 20]# cd /etc/httpd/
[root@localhost httpd]# apachectl -D DUMP_MODULES | grep expires
修改刚才的虚拟主机的文件 vim /etc/httpd/conf/httpd.conf 把下面红字添加在正常服务的前
DocumentRoot /opt/www/10
ServerName www.wawa.com
AllowOverride None
Require all granted
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://172.16.16.6/*
RewriteCond %{HTTP_REFERER} !^http://wawa.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://wawa.com$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.wawa.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.wawa.com$ [NC]
RewriteRule .*\.(gif|jpg|swf|png)$ http://www.wawawa.com/error.jpg [R,NC]
下面来访问盗链网站来看看结果
到此,防盗链就算成功了。
转自:http://blog.51cto.com/9075724/2315039