robots.txt 必须位于网站服务的顶层路径 /robots.txt,并以 UTF-8 纯文本形式提供。它通过 User-agent 指定爬虫,通过 Disallow 和 Allow 设置路径规则,告诉遵守 Robots Exclusion Protocol 的自动化客户端哪些 URL 可以抓取、哪些不可以抓取。该协议于 2022 年成为 IETF 正式标准 RFC 9309,但它仍然是爬虫主动遵守的规则,不具备强制访问控制能力。

屏蔽抓取不等于禁止索引

robots.txt 禁止抓取,不代表 URL 一定不会出现在搜索结果中。如果其他页面链接到该 URL,Google 仍可能在没有读取页面内容的情况下发现并索引这个地址,搜索结果通常不会显示正常的内容摘要。要阻止页面被索引,可以使用 noindex meta 标签或 X-Robots-Tag 响应头,但前提是爬虫能够访问页面并读取这条规则。因此,不能先通过 robots.txt 禁止抓取同一个 URL,再指望页面中的 noindex 生效。

是君子协议,不是安全机制

robots.txt 文件对外公开,任何人都能看到其中声明的路径,不遵守协议的爬虫也可以直接忽略规则。它适合管理合规爬虫的抓取行为,不适合保护后台、客户资料、内部文件等敏感内容。真正的访问保护应使用登录验证、权限控制、IP 限制等安全措施。