有一天你突然发现有一个跟你一模一样的站点,是的,你的网站被恶意镜像了,那该怎么办?不要着急,本文提供解决办法,快来看一下。
近日,江西养牛人站长向笔者反映到,雅兮网被恶意镜像了,还有他的网站以及圈内的众多博客都出现了镜像站点。笔者刚开始也没有多么在意,但今天在百度搜索“雅兮网”时,这个假冒的镜像网站竟然都进前10了,这太恐怖了,再这样下去李逵就要被李鬼以假乱真了。
看百度收录,网站标题、描述一模一样,唯一的区别就是域名,这个假冒的雅兮网域名为 https://www.yaxi.net.rajatorrent.com/ ,也就是rajatorrent.com这个主域名解析的高仿子域名,如果你想知道自己的站点有没有被镜像,只需要更换为自己的域名访问一下即可。
简单看了下,不仅我们这种小站点,就连QQ、360这种互联网巨头都被镜像,这个盗版者真的是胆儿够肥的啊。
何为镜像站点,有什么危害?
通俗的讲,恶意镜像者通过某些手段复制了你的站点,除了域名不一样之外,其他内容一模一样,用户根本无法分辨。甚至对于一些新的站点,搜索引擎都会迷惑到底哪个是真的站点,那么就有可能正牌的网站被删除收录,而盗版的却被搜索引擎青睐。
虽然目前我们还不知道恶意镜像我们的网站到底有什么意图,但肯定对我们没什么好处,如果他这个域名有点什么不健康的信息,那么我们被镜像的站点有可能被污染掉,所以还是要警惕这个现象。
被恶意镜像怎么办
本文提供两种解决方法,第一种是屏蔽镜像网站采集数据,这样可以导致镜像页面挂掉,搜索引擎删掉其收录,但较为复杂,且一次只能仿一个镜像网站。第二种方法简单有效,但镜像站点依然存在,不过胜在简单粗暴,大家根据自己情况选择。
方法一
笔者了解到,这类镜像看似一个完整的站点,其实上是每次用户访问镜像站点,程序就会来正版的站点查询数据,并修改相关链接然后呈献给用户。实质上还是在读取原站的数据,那么久很好解决了,我们只需要屏蔽到抓取我们数据的那个主机ip就可以了,那该怎么办呢?我们使用.htaccess文件来屏蔽ip,首先就要先获得那个主机的ip。
1、获取镜像服务器ip
复制如下代码,新建一个php文件,并命名为“ip.php”上传到你的网站根目录
- <?php
- $file = "ip.txt";//保存的文件名
- $ip = $_SERVER['REMOTE_ADDR'];
- $handle =fopen($file,'a');
- fwrite($handle,"IP Address:");
- fwrite($handle,"$ip");
- fwrite($handle,"\n");
- fclose($handele);
- ?>
2、然后访问你网站的镜像站点,在地址后面加.../ip.php,然后你就会在网站根目录找到ip.txt文件了,打开复制里面的ip地址。
3、然后打开你的.htaccess文件,在后面加上如下代码(自行修改为刚刚获得的ip)
- #添加IP黑名单
- Order Deny,Allow
- Deny from 162.158.72.179
这个时候你再刷新一下镜像站点,是不是已经403报错了呢?这个时候已经解决了这个镜像站点,然后就等待蜘蛛将其解决掉吧。
总结起来就是屏蔽镜像服务器站点,如果你使用CDN,可以直接在CDN后台添加ip黑名单,本教程基于WordPress程序,其他系统请自测。
缺点就是如果镜像网站更换了ip,那我们的屏蔽就失败了,不过目前只能这样,如果读者有什么更好地办法请留言一起讨论。
方法二:JS代码防镜像(2016.5.12新增)
有站长朋友提供了一个更为简单的方法,只需要在<head></head>里添加一段js代码,访问镜像网站就会直接跳转到源网站。
- <script type="text/javascript">
- if (document.location.host != "www.yaxi.net") {
- location.href = location.href.replace(document.location.host,'www.yaxi.net');
- }
- </script>
注意:代码中的网址一定要填你的网站主网址,比如雅兮网的主网址是www.yaxi.net,但是写了yaxi.net后就会出现页面不断刷新的情况,请大家悉知。
此方法简单有效,就算有网页被误导至镜像网站,也能很快的被“传送”回来,且能防止绝大多数类似于此类的镜像站点,可谓是一劳永逸,非常值得推荐。
2个我都试过没有用,建议博主先自己测试是否可行在写经验,真是浪费别人时间
@seo: 既然我用了自己做网站做实例,自然是我测试可行才发出来;至于你两种方法都失效,那可能是我们的遇到的情况都不一样。此文的前提是镜像站是通过实时抓取源站数据来展现,可用方法一禁止其抓取(Apache服务器下) 方法二是浏览器js检测当前域名是否为设置的域名,不是则跳回,原理非常清晰,不存在错误这种说法!而且要知道状况是多种的,镜像站也有多种技术来实现,我也从来没有说过此方法一定可行,毕竟世上没有百分之一百的事情。或许你认为是在浪费你的时间,但有的朋友却能因此解决问题,如果就因为方法不能百分比解决问题而怕浪费别人时间就不写了,那互联网哪里还有什么分享精神可言!
第一个没试过,第二个已经无效了