自从9月初开始明月就发现我的网站好不容易得来的百度子链、Logo、官网标识甚至首页都在百度搜索结果里消失了,搜索网站品牌词都是显示的“主域名.com/***/”文章分类网址,主域名彻底的找不到了,辛苦几年的成果瞬间都没有了,真的是“晴天霹雳”呀!
本来以为是百度算法调整的暂时性问题,开始的时候一直没有重视,半个多月都过去了问题依然没有好转的迹象。这时,我才感觉应该是出问题了,于是马上开始着手自己排查问题了,经过几天的分析后发现主要是出现了一下几点问题:
1、恶意镜像泛滥严重。
2、因疏忽删除了robots.txt,而主题已经不支持“主域名.com/page/”的链接形式,收录了一大量“主域名.com/page/”的无效链接,这些链接都是指向“主域名.com”的。
3、主机因为配置不当造成稳定性下降,经常宕机,百度站长平台收录抓取报错频繁。
发现问题后就马上开始采取应对分析和解决措施:
恶意镜像的处理
恶意镜像最近泛滥成灾,发现很多博客都遇到这个问题,特别是在百度的搜索结果里特别的多,谷歌里这种问题几乎没有,看来百度在这方面的技术有待提高呀,至于这种恶意镜像实现原理据说是“反向代理”实现的,成本非常的低,防范措施网上倒是不少,但经过我近一周的测试,有用的很少很少,最后就找到一个自动跳转会指定域名代码有点效果以及一个通过判断UA信息来防止恶意镜像的代码。经过近十天的使用感觉也是治标不治本的方法,没有办法了只能采用最笨的方法,那就是向百度反馈和举报了。
另外除了举报和反馈外,还通过在百度里搜索网站首页标题可以在结果里找到恶意镜像的网址域名并记录下来,通过ping解析获得IP,通过.htacess来屏蔽这个IP,这个工作要经常性的去做,日积月累的可以有效的遏制恶意镜像的。
用到的代码如下(以下代码都是添加到主题的Function.php里的,):
通过UA信息防止镜像
if(!is_admin()){
add_action('init','deny_mirrored_request',0);
}
functiondeny_mirrored_request()
{
//获取UA信息
$ua=$_SERVER['HTTP_USER_AGENT'];
//将恶意USER_AGENT存入数组
$now_ua=array('PHP','FeedDemon','BOT/0.1(BOTforJCE)','CrawlDaddy','Java','Feedly','UniversalFeedParser','ApacheBench','Swiftbot','ZmEu','IndyLibrary','oBot','jaunty','YandexBot','AhrefsBot','MJ12bot','WinHttp','EasouSpider','HttpClient','MicrosoftURLControl','YYSpider','jaunty','Python-urllib','lightDeckReportsBot');
//禁止空USER_AGENT,dedecms等主流采集程序都是空USER_AGENT,部分sql注入工具也是空USER_AGENT
if(!$ua){
header("Content-type:text/html;charset=utf-8");
wp_die('郑重警告:请勿采集本站,因为采集的站长木有小JJ!');
}else{
foreach($now_uaas$value)
//判断是否是数组中存在的UA
if(eregi($value,$ua)){
header("Content-type:text/html;charset=utf-8");
wp_die('郑重警告:请勿采集本站,因为采集的站长木有小JJ!');
}
}
}
复制代码
非主域名的访问自动跳转至指定域名
(注:记得要将代码内的“主域名”修改为自己的域名哦)
add_action('wp_footer','deny_mirrored_websites');
functiondeny_mirrored_websites(){
$currentDomain='"+"主域名."+"com';
echo'<imgstyle="display:none"src=""onerror=\'varstr1="'.$currentDomain.'";str2="docu"+"ment.loca"+"tion.host";str3=eval(str2);if(str1!=str3){do_action="loca"+"tion."+"href=loca"+"tion.href"+".rep"+"lace(docu"+"ment"+".loca"+"tion.ho"+"st,"+"\"'.$currentDomain.'\""+")";eval(do_action)}\'/>';
}
复制代码
总结分析:
文章评论 本文章有个评论