apache 下实现防盗链

发布时间:2020-07-14 11:45:42 作者:棒棒糖w
来源:网络 阅读:2203

什么是盗链

盗链是指在自己的页面上展示一些并不在自己服务器上的内容。通常的做法是通过技术手段获得它人服务器上的资源地址,

绕过别人的资源展示页面,直接在自己的页面上向最终用户提供此内容。

比较常见的是一些小站盗用大站的资源(图片、音乐、视频),

对于这些小站来说,通过盗链的方法可以减轻自己服务器的负担,因为真实的空间和流量均是来自别人的服务器。

对大站造成的影响确实徒徒增加了服务器压力,用户、流量还不是自己的。

下面使用两台服务器来模拟这种情况

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端口

apache 下实现防盗链 apache 下实现防盗链

apache 下实现防盗链 apache 下实现防盗链


再来就是配置盗链网站172.16.16.16 www.aaa.com

apache 下实现防盗链

弄好了服务器的配置就来验证网站的效果

正常网站

apache 下实现防盗链

盗链网站 为了区分于正常网站,网站的文字稍作改变作为区分

apache 下实现防盗链

阻止网站

apache 下实现防盗链

可以看到除了我修改的文字不同之外图片什么的无需配置直接就可以显示在盗链的网站上,这种情况肯定是要阻止的

下面来配置防盗链

使用yum 安装的肯定是有这个模块的 不放心的可以检查一下

[root@localhost 20]# cd /etc/httpd/

[root@localhost httpd]# apachectl -D DUMP_MODULES | grep expires

apache 下实现防盗链

修改刚才的虚拟主机的文件 vim /etc/httpd/conf/httpd.conf 把下面红字添加在正常服务的</VirtualHost>前

<VirtualHost 172.16.16.6>

DocumentRoot /opt/www/10

ServerName www.wawa.com

<Directory /opt/www/10 >

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]

</Directory>

</VirtualHost>

apache 下实现防盗链

下面来访问盗链网站来看看结果

apache 下实现防盗链

到此,防盗链就算成功了。



推荐阅读:
  1. Apache深度优化
  2. Apache安全优化

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

apache 防盗链 he

上一篇:如何在php中响应ajax请求

下一篇:怎么在python中用for循环求和

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》