前天在百度搜索王柏元的博客网站关键词时,猛地在百度结果的第一页中发现了一个标题、简介和我完全一样的网站,不看不知道,这个网站还不是传统意义上的抄袭、盗链,不仅仅把我的网站全部照搬,而且把网页里所有的链接都置换成那个镜像网站地址的。
我这才知道:我的网站被人家恶意镜像了。
恶意镜像很危险
恶意镜像由于照搬了源站的所有内容,如果你的网站权重不够高就苦逼了,傻逼的百度如果分不清哪个源站,难保把你当抄袭,如果你的权重干不过人家的话。不管你的权重高不高,被恶意镜像的网站无疑会削弱你的权重,因为百度蜘蛛发现了大量和你网站一模一样的内容。虽然网上有很多恶意镜像的解决办法,但是我感觉我这次遇到的情况和网上的都不太一样,使用网上许多方法都不奏效。
解决与反制措施
在尝试多种方法无效后,我想到了一个权宜之计:禁止恶意镜像网站的访问IP,之所以说是权宜之计,因为难保它的IP会变,还有这个IP不是镜像网址的解析IP
因为多次尝试解决问题过程中,我发现这个恶意镜像的网站的原理大概是:别人访问abc.ytlqpo.com 的时候,它会访问一下(www)abc.com(cn\net\cc\xyz\wang),然后把访问的结果修改一下链接返回给你。所以,它必须有一个访问源站的过程。于是乎解决方案就是禁止这个访问IP.
在搜寻海量的网站日志没有确认这个IP后,我写了一个PHP文件来截获这个访问IP。
1.截获IP
将上述文件命名为“ip.php”放在网站根目录,然后我通过镜像网站网址访问wangbaiyuan.ytlqpo.com/ip.php,然后在上述PHP程序生成的ip.txt中获取了这个IP:
$file = "ip.txt";//保存的文件名
$ip = $_SERVER['REMOTE_ADDR'];
$handle = fopen($file, 'a');
fwrite($handle, "IP Address: ");
fwrite($handle, "$ip");
fwrite($handle, "\n");
fclose($handle);
?>
104.194.16.230 (美国)
2.屏蔽IP
在htaccess中添加下述代码:
Deny from 104.194.16.230
当你再次用镜像网址访问你的网站的时候就会报4.3错误了,现在百度即使收录了这个网址对你的网站也不会产生任何影响
如果你的服务器是windows服务器就是屏蔽一下ip就可以了,如果网站使用了cdn需要让cdn官方技术帮你屏蔽一下即可。
3.反制措施
为了给这个镜像网站小小的“反击”,我决定把这个403错误页面设置为其他网站网址,实现方法是在屏蔽IP的htaccess代码中添加:
ErrorDocument 403 http://news.baidu.com/
这样你访问你的镜像网址时,会发现它镜像的是其实百度新闻。(不知道百度蜘蛛发现一个网站在完全抄袭自己家的东西会是什么感觉)
当然你写可以根据个人需求让你的镜像网址转向镜像其他的网站,比如:
借助它fanqiang!