robots.txt是置于站点根目录的文本文件,负责向搜索爬虫说明哪些页面可以抓取、哪些目录应当回避。用得妥当,它能把蜘蛛流量引向核心内容,同时护住后台和隐私目录;稍有不慎,却可能让整站从搜索结果中消失。要写出稳妥的配置,关键是吃透语法、分清场景并避开常见陷阱。
robots.txt由若干条指令组成,每条均有固定写法。熟悉下面四个核心字段,基本就能应对日常需求:
一个常见的配置示例:
User-agent: *
Disallow: /cache/
Allow: /cache/public/
Sitemap: https://www.example.com/sitemap.xml
书写时有两点务必留心:一是路径区分大小写,/Logo/与/logo/是两个不同的资源;二是使用半角标点,全角冒号或斜杠会让整行指令失效,且这类错误无法被自动修复。
不同网站的需求差异很大,下面针对三种常用情形给出可直接套用的思路。
网站改版、迁移或维护期间,可以用一条全局规则暂时禁止所有蜘蛛访问。不过要清楚,这项操作只能停止未来的抓取,已经收录的旧快照不会被移除;若想清除历史索引,还得额外到百度搜索资源平台或Google Search Console提交删除申请。
User-agent: *
Disallow: /
对于内容型博客或品牌展示站,如果不存在需要隐藏的路径,完全可以不写任何Disallow,只提供Sitemap地址。这样的极简配置对爬虫最友好,有利于内容的完整收录。
User-agent: *
Sitemap: https://www.example.com/sitemap.xml
企业站或平台类站点,通常要把后台登录、用户中心、临时上传目录等排除在索引范围之外。这样做既能防止内部信息被搜索到,也在一定程度上降低后台被恶意定位的风险。
User-agent: *
Disallow: /admin/
Disallow: /user/
Disallow: /uploads/temp/
实际运维中,下列错误相当常见,对收录影响也大,需要重点防范。
配置完成后,建议用工具或模拟抓取测试一遍,确认规则确实按预期生效,而不是想当然地以为写对了。
robots.txt并非一劳永逸。网站结构调整、新增目录或更换域名时,都应同步检查并更新规则。验证方法很简单:直接在浏览器地址栏输入域名加/robots.txt,即可查看当前生效的内容;也可以借助搜索引擎提供的抓取测试工具,模拟蜘蛛视角确认哪些路径被阻止。
另外要留意,robots.txt只能约束遵守协议的搜索引擎爬虫,无法完全防止恶意抓取工具。真正敏感的数据,请放到登录验证之后的页面,而不是仅依赖robots.txt保护。
通常不会被视为恶意操作,但可能出现收录异常,例如首页不被抓取、整站无快照等。只要及时修正规则并提交抓取申请,收录会在数天内逐步恢复。
直接访问https://你的域名/robots.txt,查看文件内容是否与预期一致;也可以使用百度搜索资源平台的抓取诊断或Search Console的URL检查工具,模拟谷歌蜘蛛来查看抓取结果。
有,作用层级完全不同。robots.txt用于禁止蜘蛛访问资源本身,页面上不会出现内容;而nofollow是写在页面里的链接指令,告诉爬虫不要追踪某个链接,但页面仍然可以被抓取和展示。
robots.txt虽小,却直接关系到站点的收录质量和信息安全。配置时先从全站角度梳理需要放行和屏蔽的路径,再据此编写规则,并做好大小写、半角符号和时间更新等细节。上线后养成定期检查和模拟抓取的好习惯,遇到收录异常时也别忘了先看看这个文件是否拖了后腿。