草!(一种植物)。半夜睡不着爬起来想折腾一下新站的收录,看着那堆没来得及处理的测试页面和后台日志里满屏的爬虫记录就心烦,心一横想着“不就改个robots.txt嘛多大点事儿”,结果现在好了,整个站跟被百度拉黑了一样,site指令出来个位数,之前辛辛苦苦伪原创堆的那些文章页面还有精心布置的TDK,全白给了。
真的,兄弟,如果你现在搜索这个需求,听我一句劝:先冷静,抽根烟,别急着动手。Robots.txt这玩意儿就像网站的交通警察,你一句话就能让所有蜘蛛(或者特定蜘蛛)别进某些门。屏蔽百度的具体代码其实简单得可怕:
User-agent: Baiduspider
Disallow: /
看到没?就这两行。第一行指定用户代理是“Baiduspider”(百度蜘蛛的官方名字,别拼错),第二行“Disallow: /”那个斜杠“/”代表整个根目录,也就是全站。你要是只想屏蔽某个目录,比如“/admin/”或者“/tmp/”,就把斜杠换成对应的路径。
但问题来了!我他妈当时就是脑子一抽,想屏蔽“/test/”目录,结果在“Disallow:”后面打了个“/”就保存上传了,完全没注意后面应该跟的是“test”而不是根目录啊!等第二天下午发现百度统计里那条笔直向下的绿线时,整个人都麻了,真的麻了,那种感觉就像你养了三个月的账号一夜之间被永封,连个申诉入口都找不到。
所以,血的教训:
- 备份!备份!备份! 改任何配置文件前,哪怕再小,先把旧的下载到本地存好。我要是备份了,一分钟就能回滚。
- 用工具校验! 改完了别急着上传,谷歌或者百度都有在线的Robots.txt测试工具,丢进去模拟一下百度蜘蛛,看看它到底“理解”成什么了。这步能救你的命。这里有个救命的测试工具入口(模拟自查),自己去找吧,别像我一样瞎。
- 搞清楚后果! 屏蔽百度蜘蛛意味着它不会再抓取你站上的任何内容,已有的收录会慢慢被清除,新内容永远不会被索引。这可不是开玩笑的,尤其是对你网站权重和流量的打击是毁灭性的。除非你这站压根不想在百度露面,否则别轻易写Disallow。
- 如果,我是说如果,你已经手贱了并且造成了严重后果(就像我),立刻、马上、删掉或者修正错误的规则,然后去百度搜索资源平台(原站长平台)提交那个该死的Robots.txt文件更新,并疯狂提交你的核心URL。剩下的,就是漫长的等待和祈祷,祈祷百度蜘蛛快点重新来抓,祈祷你的站还没被忘干净。这个过程可能几周,甚至几个月,沙盒期都没这么让人绝望。
我现在每天就干两件事:盯着日志看有没有Baiduspider的来访记录,以及抽自己当初为什么那么手贱。唉,不说了,说多了都是泪,我去提交链接了...
