对于任何依赖搜索流量的网站而言,robots.txt 都是与技术搜索引擎沟通的基础工具。通过这个放置于服务器根目录的纯文本文件,站长能够明确告知爬虫哪些区域可访问、哪些需回避,既保护敏感信息,也让搜索引擎更集中地抓取与收录关键页面。掌握它的正确写法,是技术 SEO 的必修课。
robots.txt 的核心由若干规则组构成,每组以 User-agent 开头,紧接着用 Allow 或 Disallow 声明路径约束。语法本身极为敏感:爬虫名称区分大小写,路径必须基于根目录书写,任何多余的空格或符号都可能让规则失效。
日常操作中,最易出现的问题是路径后多打空格、指令间误用逗号,或在一行内挤入多条规则。规范的参考写法如下:
User-agent: *
Disallow: /private/
Allow: /private/design.css
Sitemap: https://example.com/sitemap.xml
该协议支持两种通配符:星号(*)可匹配任意长度的字符序列,美元符号($)则表示路径到此结束。举例来说,欲拦截所有带排序参数的网址,可写为 Disallow: /*?order=;若只想屏蔽以 /print 收尾的页面,则用 Disallow: /print$。善用这些符号能缩短规则清单,让文件更易维护。
各网站的开放策略不尽相同,下面总结五种常见需求及其实现手段,便于直接套用并微调路径。
写完文件并非结束,验证才是关键。Google Search Console 的 robots.txt 测试工具可直接看到抓取结果并提示语法错误。验证与排错时,请留意下列高频雷区:
举个常见的失误案例:某站点将所有带问号的 URL 一律屏蔽,结果站内搜索页与分页全部失去收录,流量骤减。最终通过细化规则,仅排除无效参数才恢复。
robots.txt 的职责是控制抓取,而非直接决定索引。单纯禁止抓取并不能彻底移除已收录页面,后者仍需借助 noindex 标签或删除页面处理。合理的做法是,将 robots.txt 当作抓取预算的管理器:将低价值页面(如标签聚合页、站内搜索结果)排除在外,让爬虫集中精力访问高权重内容。同时,务必在文件内声明 Sitemap,加速新内容的发现节奏。若网站具备良好的内链结构,规则应尽量精简,只屏蔽真正无用的目录,避免误伤全站抓取。
不完全是。Disallow 能阻止爬虫抓取,但若外部网站已有指向该页面的链接,搜索引擎仍可能基于公开信息将其收录,只是展现形式受限。彻底移除索引需配合 noindex 指令或直接删除页面。
按协议规范,Allow 规则拥有更高优先级。用最短匹配路径判断,若 Allow 与 Disallow 均匹配该网址,则按 Allow 放行。建议不要依赖此特性,而是让规则本身清晰无冲突。
爬虫通常会在数小时到数天内重新抓取该文件并应用新规则。若希望加速,可在搜索引擎站长工具中主动提交更新后的 robots.txt 以触发快速验证。
编写 robots.txt 虽不复杂,却需要细致与耐心。建议你先整理出站内所有目录与参数类型,规划出哪些内容值得收录、哪些必须屏蔽,再动手撰写规则。每次修改后,务必通过站长工具验证,并观察抓取统计中的异常波动。保持规则精简、路径准确、定期复查,是让搜索引擎高效服务网站内容的长久之道。