建站知识

robots.txt 和 sitemap:让蜘蛛知道该抓什么、别抓什么

2026-10-25 635 次阅读

网站上线后最让人困惑的一句话是"已经收录了,但搜不到"。有时候问题不在内容,而在这两个放在根目录的小文件上。

robots.txt 的位置和语法

它必须放在域名根目录,地址是 /robots.txt,放错位置等于没写。内容由几行指令组成,主要就三个:

  • User-agent:指定规则对哪个蜘蛛生效,写 * 表示所有。
  • Disallow:不允许抓取的路径,从一个斜杠开始。
  • Sitemap:告诉蜘蛛站点地图在哪,这行顺带就能用。

典型写法是允许全站、屏蔽后台和敏感目录,再声明 sitemap 的位置。注意 Disallow 后面写路径前缀就够了,不用写完整网址。

一行写错就让整站消失

最常见的错误是写成了 Disallow 一个斜杠,意思是禁止抓取全站。测试站为了不被抓这么写很常见,上线时忘了删,网站就从搜索结果里蒸发了。

第二个误区是以为 Disallow 等于不收录。实际是"不让抓,但地址如果被外链暴露,仍可能出现在结果里,只是没有摘要"。真正不想被索引,该用页面级的 noindex,而且那个页面必须允许被访问到。

第三个坑是规则顺序和大小写。路径区分大小写,/Admin/ 和 /admin/ 是两条;Allow 和 Disallow 冲突时,写得越具体的优先,不同蜘蛛的实现还有细微差异,别把规则设计得太复杂。

该屏蔽哪些路径

后台地址、购物车和结算流程、站内搜索结果页、带大量参数的筛选排序页、测试目录、临时文件。这几类要么不该被看到,要么会生成海量重复内容,拖累整站质量。

反过来,别屏蔽图片和样式所在的目录。有些老教程为了省流量禁掉静态资源,结果蜘蛛判断页面不完整,影响不小。

sitemap 该放什么

只放你希望被索引的、状态正常的规范地址。404 页面、跳转地址、已经设了 noindex 的页面,都不该出现在里面。sitemap 的内容要和实际页面一致,长期挂着已删除的链接,会让蜘蛛降低对这个文件的信任。

规模上单文件有条数上限,超过就用索引文件拆成多个。提交到站长平台后,隔几天看一次"已提交"和"已索引"的比例,比例太低说明内容质量或重复度有问题。

上线前花三分钟查一遍

用无痕窗口直接访问 /robots.txt,看内容是不是正式版;访问 /sitemap.xml,确认能打开且不是报错页;再随手点两个 sitemap 里的地址,确认返回正常。这三步做过,能避开绝大多数低级事故。

标签

  • robots.txt
  • sitemap
  • 网站收录