两个小文件常被当成安全边界使用,但它们不是。robots.txt 描述爬虫偏好,sitemap 则给搜索系统一份属于该站点的 URL 清单。
robots.txt 能做什么、不能做什么
规则发布于源站根路径 /robots.txt,由配合的爬虫读取。它不会保护私有目录、不会从网络上移除 URL,也不能替代认证。不应公开的路由需要服务器授权或网络边界。
让文件保持平实,并测试它的实际位置:
User-agent: *
Disallow:
Sitemap: https://www.example.test/sitemap.xml
文件应为 UTF-8。如果部署会重定向它,请核验你想要的爬虫行为,而不是假设每个客户端都遵循同一条链。
sitemap 增加了什么
sitemap 是一份清单,而不是权限列表。使用单一主机的绝对 URL、正确做 XML 转义,并且只列出你准备发布的规范页面。不要因为某个 URL 存在于构建目录就把它列出。
协议允许每个 sitemap 文件最多 50,000 个 URL 与 50 MB。小站不需要 index 文件;一份普通 sitemap 更容易检视。把它的 XML 校验通过,并像普通页面一样通过同一 HTTPS 边缘请求它。
curl -fsS https://www.example.test/robots.txt
curl -fsS https://www.example.test/sitemap.xml | xmllint --noout -
如果未安装 xmllint,请在发布它的同一个 CI 环境里解析该 XML。重要的是检查要在文件被替换到边缘之前运行。
来源
- RFC 9309 — Robots Exclusion Protocol,robots 规则、文件位置与 user-agent 匹配,已核验 2026-08-22。
- Sitemaps Protocol,sitemap XML 结构与发现,已核验 2026-08-22。