robots.txt 是每个网站站长都必须掌握的基础配置文件。它位于网站根目录,通过纯文本形式告知搜索引擎爬虫哪些内容可以抓取,哪些路径应当避开。配置得当,爬虫会高效利用抓取额度,加速核心页面的索引;一旦配置有误,可能导致整站在搜索结果中消失,后果严重。接下来我们将系统梳理该文件的语法要点与高频易错点。
该文件的在线访问地址固定为“域名/robots.txt”,例如 https://example.com/robots.txt。其本质是爬虫访问时的“路线指引”,而非搜索引擎是否收录页面的“最终决策者”。若想阻止页面被索引,应使用 noindex 标签;robots.txt 仅限制抓取动作,无法干预索引结果,二者功能不可混淆。
更关键的是,robots.txt 对爬虫仅具有“协议约束力”。主流搜索引擎的爬虫会遵循其中条款,但面对恶意采集程序或非正规工具,该文件形同虚设。涉及用户隐私、登录凭证或商业数据的目录,需配合登录验证、防火墙策略等硬性防护,切不可将安全全部寄托于此。
robots.txt 由若干规则块组成,每个规则块均以 User-agent 字段开头。书写时遵循“字段名: 值”的格式,建议统一小写,并在冒号后保留一个空格,以提升兼容性。
此字段界定规则块的作用范围。例如写入 User-agent: Googlebot,则该组规则仅作用于谷歌爬虫;如需覆盖全部搜索引擎爬虫,则使用通配符 User-agent: *。文件中可包含多个规则块,以针对不同爬虫设置差异化权限。
Disallow 声明禁止抓取的路径,Allow 则用于允许抓取。值得注意的是,当 Disallow 后为空(即 Disallow:)时,表示取消所有限制,允许抓取整站。当某条 URL 同时命中 Allow 与 Disallow 规则时,搜索引擎依据“最长匹配优先”原则处理——路径更细致的规则优先执行。例如同时存在 Disallow: /api/ 与 Allow: /api/public/,后者将放行该子路径。
Sitemap 指令用于指明站点地图的完整链接,便于爬虫快速获取内容清单,通常置于文件末尾。Crawl-delay 常用于设定抓取间隔,但需注意:谷歌官方已明确声明忽略此参数。若需控制抓取频次,应前往 Google Search Console 后台进行配置。
以下列举常见配置需求,可直接参考并替换为自有目录。
配置后,可通过访问“域名/robots.txt”直接预览文件内容,并使用搜索引擎站长工具中的“抓取测试”功能验证规则是否生效。
许多运营者在配置过程中容易忽略以下细节,导致收录异常。
不能。robots.txt 只阻止爬虫抓取,但若页面被其他途径获取(如外链、用户分享),搜索引擎仍可能索引其标题或部分内容。严格防止收录应使用 noindex 标签。
立即修改或删除该文件,并保留备份。上传新版后,可在搜索引擎站长工具中提交更新,通常一至两天内爬虫会重新读取。若出现收录骤降,优先检查文件是否存在语法错误。
搜索引擎逐条匹配规则,以命中路径最长的规则为准。若长度相同,则依据定义顺序决定,通常先出现的规则优先。若规则相互矛盾且指向同一路径,建议合并规则组,避免歧义。
正确配置 robots.txt 是保障网站抓取效率的基础环节。建议运营者定期校验文件内容,避免使用特殊字符与大小写混用,并牢记该文件并非安全工具。配置完成后,务必通过站长工具验证抓取效果,及时调整策略,确保核心内容顺利收录。