robots.txt:你网站的门卫

robots.txt 控制搜索引擎可以爬取哪些页面。了解它如何工作,阻止重要页面的常见错误,以及如何审计你的配置。

一个小小的文本文件,拥有巨大的权力

你网站根目录有一个文件——yoursite.com/robots.txt——它告诉每个搜索引擎爬虫什么能访问、什么不能。这个文件从 1994 年就有了,只是纯文本,但写错一行就可能让你的整个网站从 Google 消失。

robots.txt 怎么工作

Googlebot 到达你的网站时,做的第一件事就是检查 /robots.txt。文件包含这样的规则:

User-agent: *
Allow: /
Disallow: /admin/
Disallow: /private/

Sitemap: https://example.com/sitemap.xml

意思是:"所有爬虫可以访问所有内容,除了 /admin//private/。另外,sitemap 在这里。"

很简单对吧?问题在于小错误会造成大后果。

反复发生的那些错误

意外屏蔽整个网站。 这比你想的更常见:

User-agent: *
Disallow: /

Disallow 后面那个单独的斜杠屏蔽了所有内容。每一个页面。你的整个网站在 Google 里消失了。这通常发生在开发阶段(为了让测试站不被 Google 收录),结果上线时有人忘了改回来。

屏蔽 CSS 和 JavaScript。 以前有人建议"屏蔽你的 CSS 和 JS 文件"。现在这是很糟糕的建议。Google 需要渲染你的页面才能理解它们。屏蔽这些资源意味着 Google 看到的是一个坏掉的页面。

意外屏蔽重要部分。 Disallow: /blog 本来想屏蔽 /blog-drafts/,结果也把 /blog/ 屏蔽了——你的整个博客。

完全没有 robots.txt。 没有的话,爬虫可以访问所有内容(这可能没问题),但你失去了对爬取预算优化的控制,也无法引导爬虫到你的 sitemap。

robots.txt 能做和不能做的事

能做不能做
阻止爬取某个 URL阻止索引(用 noindex 来做)
控制爬取预算分配移除已经在索引中的页面
屏蔽特定爬虫保证敏感数据的保护
指向你的 sitemap覆盖 noindex 指令

关键区别:robots.txt 阻止的是爬取,不是索引。 如果其他网站链接到一个你在 robots.txt 里屏蔽的页面,Google 可能仍然索引那个 URL——只是不知道上面有什么内容。

检查你的 robots.txt

每个网站都应该定期验证:

  1. 文件存在且可以在 /robots.txt 访问
  2. 重要页面没有被意外屏蔽
  3. CSS 和 JavaScript 文件没有被屏蔽
  4. 包含了正确的 sitemap URL
  5. 没有过于宽泛的 Disallow 规则误伤不该屏蔽的页面

Kaitico 在每次审计中检查你的 robots.txt——验证可访问性,解析规则,并标记可能阻止重要内容被搜索引擎发现的指令。

想检查你的网站是否存在此问题?

Kaitico 可以一键扫描全站,找出所有 SEO 问题。

免费开始审计