如何应对网站被恶意镜像(终极版)

原创 2017-03-26 13:32  阅读 1,824 views 次

何为镜像站点,有什么危害?

镜像网站是指:一个或多个域名不同、但内容完全相同的网站。 镜像网站的出现有可能是有意的,也有可能是无意的。有意的原因包括:软件资源网站给用户提供多个下载链接。 某些网站提供多个镜像,使负载均衡或使服务更稳定;黑帽SEO复制多个网站,意图获得更多排名; 整站被人复制抄袭也会造成镜像网站。
镜像网站通常会造成复制内容,搜索引擎并不喜欢,对原创内容网站或站长想排名的网站可能造成无法预知的影响。通俗的讲,恶意镜像者通过某些手段复制了你的站点,除了域名不一样之外,其他内容一模一样,用户根本无法分辨。甚至对于一些新的站点,搜索引擎可能无法分辨哪个才是真正的站点,对网站排名造成恶劣影响。

网站被恶意镜像的危害

镜像网站这一技术,最初有助于解决网站流量过高,服务器无法承受流量压力的问题。但网站被恶意镜像则百害而无一利。

1、你的网站被判定为镜像网站,从而被惩罚。

搜索引擎没那么聪明,所以李逵变李鬼的悲剧不少站长已经饱尝过。

2、网站被惩罚,即意味着流量受损,品牌也毫无疑问会受损。

3、其它未知的危害,取决于恶意镜像网站的表现,比如做黄赌毒。如此也许你的命运就掌握在了别人手里。

网站被恶意镜像怎么办

网站被恶意镜像解决方案配图

网站被恶意镜像

一、走反馈、投诉、举报的防守之路

1、可轻松判定为恶意镜像的网站,请在百度站长平台反馈。

可通过域名、标题轻松判断为镜像的恶劣站群,如果在各关键词下获得排名,可通过站长平台进行反馈(http://zhanzhang.baidu.com/feedback

2、隐蔽性强的恶意镜像网站,请向百度投诉。

那些非常隐蔽的、无法快速区分李逵李鬼的站点,需要保护自我权益的站点可以向百度投诉(https://www.baidu.com/duty/right.html)。

注意:投诉的时候要提供最有说服力资质证明,比如:网站备案证明、品牌营业证明,百度法务部会审核处理。

3、如果镜像站点还包含黄赌毒等内容,请向百度举报。

举报地址:http://jubao.baidu.com/jubao/

4、搜索引擎已经识别并处理镜像网站,无为而治。

如果镜像站已经死链,或者在相关关键词下没有排名,那证明镜像站点已被反作弊策略识别并处理,站长可高枕无忧了。

二、走禁止IP的进攻之路

用户访问恶意镜像网站的时候,内容源直接调用自源网站,所以如果屏蔽恶意镜像网站的IP,就可以达到禁止的目的。

获取IP的方法很简单,比如直接在CMD命令行里面Ping网址、用第三方站长工具,也可以在服务器根目录放置获取IP地址的文件。

如果你是一定的编程基础,或许对新事物感兴趣,不妨动手新建获取IP的文件。

以Linux主机和PHP编程语言为例。

第一步

1)新建一个php文件,命名为ip.php,添加如下内容,上传到网站根目录。

<?php
$ip = $_SERVER['REMOTE_ADDR'];
echo '镜像网站IP:'.$ip;
?>

2)访问镜像网站网址http://***.***/ip.php,获取镜像网站ip地址*.*.*.*。

第二步

新建.htaccess文件,添加如下内容,上传到网站根目录。

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{http:X-Forwarded-For}&%{REMOTE_ADDR} (此处填写第一步获取的IP地址) [NC]
RewriteRule (.*) - [F]
</IfModule>

此时刷新镜像网站,就会提示403错误。大功告成。

注意:如果你的Linux系统有禁止IP的功能,直接将IP加入黑名单即可。

三、走JS的进攻之路

如果你无法通过IP禁止镜像网站,那么可以通过JS代码判断主域。如果主域不是本域名则跳转回本域名。

在网站</head>标签之前中添加JS判断代码,代码如下:

<script>
if (document.location.protocol != "https:" && navigator.userAgent.indexOf("MSIE 6.0") < 0 )
{
location.href = location.href.replace(/^http:/,"https:");
}
if (document.location.host != "www.wangyuwe.com")
{
location.href = location.href.replace(document.location.host,'www.wangyuwen.com');
}
</script>

以上便是网站被恶意镜像之后最全最好的解决方法汇总。如果以上方法都无效,那么请来看以下详解。

一、JS跳转法(通用法一)

即通过JS判断当前域名,如果不是本域名则跳转回本域名。但镜像网站都会过滤掉JS代码甚至JS文件,那么我们需要加入代码混淆和触发事件。

将下面代码中的地址改为自己的域名地址添加到主题目录header.php中适当位置即可(此方法有效)!

  1. <script type="text/javascript">
  2. if(window["\x6c\x6f\x63\x61\x74\x69\x6f\x6e"]["\x68\x6f\x73\x74"] != 'www.d9y.net' && window["\x6c\x6f\x63\x61\x74\x69\x6f\x6e"]["\x68\x6f\x73\x74"] != 'd9y.net'){
  3.     alert('警告!检测到该网站为恶意镜像站点,将立即为您跳转到官方站点!');
  4.     window["\x6c\x6f\x63\x61\x74\x69\x6f\x6e"]["\x68\x72\x65\x66"] = 'http://'+'www.d9y.net/';
  5. }
  6. </script>
  7. <div style="display:none;">
  8. <script>nod9ynet = false;</script>
  9. <img src=" " onerror='setTimeout(function(){if(typeof(nod9ynet)=="undefined"){window["\x6c\x6f\x63\x61\x74\x69\x6f\x6e"]["\x68\x6f\x73\x74"]="www.d9y.net";}},3000);'>
  10. </div>

上述代码为两段代码组合而成,相辅相承,配合使用来防止不同技术处理的镜像站。

 

二、JS跳转法(通用法二)

同方法一,利用拆分法将代码拆分,不需要再对代码进行混淆。

将下面代码中的地址改为自己的域名地址添加到主题目录header.php中适当位置即可(此方法有效)!

  1. <img style="display:none" src=" " onerror='var currentDomain="www." + "d9y" + ".net"; var str1=currentDomain; str2="docu"+"ment.loca"+"tion.host"; str3=eval(str2) ;if( str1!=str3 && str3!="cache.baiducontent.com" && str3!="webcache.googleusercontent.com" && str3!="c.360webcache.com" && str3!="snapshot.sogoucdn.com" && str3!="cncc.bingj.com" ){ do_action = "loca" + "tion." + "href = loca" + "tion.href" + ".rep" + "lace(docu" +"ment"+".loca"+"tion.ho"+"st," + "currentDomain" + ")";eval(do_action) }' />

 

三、JS跳转法(WordPress专用)

将下面代码中的地址改为自己的域名地址添加到当前所用的主题的 functions.php 中即可(此方法有效)!

  1. //防止网站被恶意镜像
  2. add_action('wp_footer','deny_mirrored_websites');
  3. function deny_mirrored_websites(){
  4.     $currentDomain = 'www" + ".d9y." + "net';
  5.     echo '<img style="display:none" src=" " onerror=\'var str1="'.$currentDomain.'";str2="docu"+"ment.loca"+"tion.host";str3=eval(str2);if( str1!=str3 && str3!="cache.baiducontent.com" && str3!="webcache.googleusercontent.com" && str3!="c.360webcache.com" && str3!="snapshot.sogoucdn.com" && str3!="cncc.bingj.com" ){ do_action = "loca" + "tion." + "href = loca" + "tion.href" + ".rep" + "lace(docu" +"ment"+".loca"+"tion.ho"+"st," + "\"' . $currentDomain .'\"" + ")";eval(do_action) }\' />';
  6. }

 

四、屏蔽恶意镜像站UA

根据抓取服务器日志分析得知lapaleo.com此镜像站UA为"PHP/5.4.45"

那么通过.htaccess将此UA屏蔽掉即可(此方法有效)!

  1. # 屏蔽恶意UA
  2. RewriteCond %{HTTP_USER_AGENT} "PHP/5.4.45"
  3. RewriteRule ^(.*)$ http://www.d9y.net

将上面代码中加到.htaccess中即可。

此方法优点:一劳永逸。

缺点:只能针对某些特殊UA的镜像站点。

五、屏蔽镜像站IP

根据抓取服务器日志分析可抓取镜像站的IP地址(关闭CDN情况下)

再通过.htaccess将镜像站IP屏蔽掉即可(此方法有效)!

如果开启了CDN,则需要将下面三个IP地址加入CDN黑名单!

  1. # 屏蔽恶意IP
  2. Order Allow,Deny
  3. Allow from all
  4. Deny from 142.4.100.25
  5. Deny from 188.129.143.73
  6. Deny from 104.236.180.129

将上面代码中加到.htaccess中即可。

上面三个IP地址为镜像站的IP地址(其中某镜像IP地址会隔段时间改变)

此方法优点:最原始,最暴力。

缺点:镜像网站IP收集不全并且某些镜像站IP会改变。


好了,通过上面几种方法基本上可以防止网站被镜像的问题了。

PS:修改前注意先备份文件,特别是.htaccess文件。

建议同时使用方法(一)/(二)/(三)、方法四、方法五。

方法一、方法二、方法三不要同时使用,因为三种方法原理相同,同时使用可能会出现某些莫名其妙问题……

本文地址:http://henanseo.net/295.html
关注我们:博主微信号:扫描二维码,
版权声明:本文为原创文章,版权归 博主启诺 所有,欢迎分享本文,转载请保留出处!

发表评论


表情