惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

A
About on SuperTechFans
量子位
Apple Machine Learning Research
Apple Machine Learning Research
博客园 - 聂微东
V
Visual Studio Blog
小众软件
小众软件
Hugging Face - Blog
Hugging Face - Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
博客园 - 司徒正美
V
V2EX
The GitHub Blog
The GitHub Blog
博客园_首页
月光博客
月光博客
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
MyScale Blog
MyScale Blog
博客园 - 叶小钗
F
Fortinet All Blogs
T
Tailwind CSS Blog
GbyAI
GbyAI
酷 壳 – CoolShell
酷 壳 – CoolShell
IT之家
IT之家
WordPress大学
WordPress大学
B
Blog
H
Help Net Security

Halo - 强大易用的开源建站工具

使用 MCP,让 AI Agent 管理网站 商品询价、身份验证与编辑体验升级,Halo 2.26 发布 Halo 首个支持可视化编辑的主题,Publica 公共门户正式发布! 如何选择最佳网站搭建方案?2026年12款建站工具对比测评! Halo 和 WordPress 对比:开源 CMS 怎么选? Halo 和 Ghost 对比:博客、简报与会员订阅怎么选? Halo 和 Typecho 对比:现代 CMS 还是轻量博客? Halo 和 EmDash 对比:成熟 CMS 还是 Cloudflare 新方案? Halo 和 Hugo 对比:动态 CMS 还是静态网站生成器? Halo 和 Hexo 对比:动态 CMS 还是静态博客? Halo 和 Strapi 对比:全栈建站平台还是 Headless CMS? 在群晖 NAS 上用 Docker 部署 Halo 用 Obsidian 写文章,一键发布到 Halo 域名是什么?新手注册域名前要知道的 7 件事 虚拟主机、VPS 和云服务器有什么区别?建站服务器怎么选 建站需要准备什么?域名、服务器、备案和 SSL 的关系 域名解析:A 记录、CNAME、MX、TXT 分别怎么用 网站备案是什么?个人备案和企业备案有什么不同 SSL 证书和 HTTPS 是什么?免费证书够用吗 CDN 是什么?网站什么时候需要 CDN Sitemap 是什么?它对网站收录有什么作用 SEO 写作基础:标题、描述、URL 和内链怎么做 301 和 302 重定向有什么区别?网站改版怎么降低排名风险 Google Analytics、Umami、Rybbit:流量统计工具怎么选 网站图片优化指南:格式、压缩和懒加载怎么做 网站安全基础:建站后必须做的 6 件事 Halo 如何定时发布文章 Halo 如何接入 Bing Webmaster Tools 支持优惠券和折扣码,Halo 2.25 发布 AI Foundation:给 Halo 插件生态一层 AI 能力底座
robots.txt 是什么?新手建站常见配置误区
Ryan Wang · 2026-06-23 · via Halo - 强大易用的开源建站工具

如果你在浏览器中访问 你的域名/robots.txt,会看到一个纯文本文件,里面写了一些规则。这个文件,就是你和搜索引擎爬虫之间的「交通指示牌」——告诉搜索引擎:哪些页面可以抓取,哪些不要碰。

但这个看起来简单的文件,却是建站新手最容易配出问题的 SEO 组件之一。配错了,可能影响搜索引擎抓取,甚至让重要页面长期无法正常展示。


一、robots.txt 控制的是什么?

首先要明确一个最核心的概念:robots.txt 控制的是「抓取」,而不是「索引」。

  • 抓取(Crawl):搜索引擎爬虫访问并读取你的页面内容。
  • 索引(Index):搜索引擎把页面内容存入它的数据库,使其可能出现在搜索结果中。

robots.txt 只能阻止爬虫抓取某个路径。它不能直接阻止页面被索引

如果你用 robots.txt 屏蔽了某个页面,但该页面被其他网站链接引用,搜索引擎仍然可能将它收录进索引——只不过索引中没有该页面的实际内容,搜索结果中可能显示「由于此网站的 robots.txt 文件,无法提供此结果的描述」。

如果你想让某个页面不出现在搜索结果中,正确的方法是使用 noindex meta 标签,而不是 robots.txt。


二、robots.txt 的基本语法

一个典型的 robots.txt 文件长这样:

User-agent: *
Disallow: /admin/
Disallow: /wp-admin/
Allow: /admin/public/
Sitemap: https://www.example.com/sitemap.xml

各字段含义

字段 含义
User-agent: * 这条规则适用于所有搜索引擎爬虫(* 是通配符)
Disallow: /admin/ 禁止抓取 /admin/ 路径及其所有子目录
Allow: /admin/public/ Disallow 规则中放行特定路径
Sitemap: ... 告诉搜索引擎你的 Sitemap 地址

你也可以针对特定爬虫设置规则:

User-agent: Googlebot
Disallow: /private/

User-agent: Baiduspider
Disallow: /

上面第一条规则只对 Google 爬虫禁用 /private/ 路径;第二条规则禁止百度爬虫抓取整个网站。


三、5 个最常见的配置误区

误区 1:用 robots.txt 保护敏感内容

这是最危险的一个误区。robots.txt 是公开文件,任何人都能访问查看。如果你在里面写了:

Disallow: /secret-admin-panel/

这等于向全世界宣告了你的后台管理路径。攻击者会专门盯着 robots.txt 中 Disallow 的路径。

正确做法:敏感后台使用密码保护、IP 白名单、HTTP 基础认证等方式保护,而不是靠 robots.txt 来「隐藏」。

误区 2:全站禁止抓取

User-agent: *
Disallow: /

这条规则会让所有搜索引擎停止抓取你的网站。如果你发现网站忽然在 Google 中搜不到了,先检查 robots.txt 是不是被误设为全站禁止。这种情况常见于从测试环境迁移到正式环境时忘记修改。

误区 3:屏蔽 CSS 和 JS 文件

Disallow: /assets/js/
Disallow: /assets/css/

Google 等搜索引擎会渲染页面,需要获取 CSS 和 JS 来理解页面布局。如果屏蔽了这些资源,搜索引擎可能无法正确评估你的页面质量,从而影响排名。不要屏蔽 CSS 和 JS 文件,除非你有非常具体且理解后果的理由。

误区 4:把 noindex 页面放进 Disallow

如果你想一个页面彻底不被搜索引擎处理,不应该用 Disallow,而应该在页面中添加:

<meta name="robots" content="noindex">

因为如果只用 Disallow,爬虫根本不会读取页面内容,也就看不到 noindex 标签,页面仍然可能存在于索引中。

规则:允许抓取 + noindex = 页面不出现在搜索结果。Disallow = 页面不抓取但可能被索引(通过外链发现)。

误区 5:依赖 robots.txt 阻止搜索引擎收录过期内容

有些用户会定期在 robots.txt 中添加新 Disallow 规则来屏蔽旧页面。这不是正确的做法。搜索引擎一旦索引了页面,仅仅禁止后续抓取不会让已有的索引被删除。

正确做法是:

  • 删除或更新页面本身(返回 404 或 301 跳转)。
  • 或在页面中添加 noindex,等待搜索引擎下次抓取时处理。
  • 或通过 Search Console 的「移除网址」工具提交移除请求。

四、如何测试 robots.txt 是否正确?

Google Search Console 和在线校验工具

Google Search Console 会在站点资源中展示 robots.txt 抓取状态和相关问题。你可以结合以下方式检查:

  1. 查看 Search Console 中的 robots.txt 状态报告,确认 Google 能读取该文件。
  2. 使用 URL 检查工具查看某个具体页面是否允许抓取、是否可被索引。
  3. 使用在线 robots.txt validator 或本地工具测试规则匹配,避免 Disallow 写错路径。

直接在浏览器中查看

访问 你的域名/robots.txt 即可看到当前生效的 robots.txt 内容。


五、Halo 站点的 robots.txt 配置

Halo 站点通常建议通过官方 Sitemap 插件处理 robots.txt:该插件支持 robots.txt 路由和规则编辑。如果你没有使用这个插件,也可以在 Nginx 等反向代理层提供 robots.txt,具体取决于你的部署方式。

建议的默认配置:

User-agent: *
Disallow: /apis/
Allow: /
Sitemap: https://你的域名/sitemap.xml
  • /apis/ 是 Halo 的 API 路径,无需被搜索引擎抓取。
  • 后台入口不要依赖 robots.txt 保护。robots.txt 是公开文件,真正的后台安全应依靠登录认证、强密码、访问控制和及时升级。
  • 其他所有公开内容通过 Allow: / 放行。

相关教程:Halo 如何接入 Google Search Console · Halo 如何接入 Bing Webmaster Tools


robots.txt 看起来简单,但用错了后果不小。记住最核心的一条:它管的是「能不能抓」,不是「能不能被搜到」——想让页面不出现在搜索结果里,应该在页面里加 noindex 标签,而不是用 robots.txt 去屏蔽。

另外,robots.txt 是任何人都能访问的公开文件,别把后台路径写在里面当作安全措施。新站上线前花 30 秒访问一下 你的域名/robots.txt,确认没有写 Disallow: /


robots.txt 配好了,你基本完成了搜索引擎的基础配置。不过如果你将来要改 URL 结构或换域名,重定向那一步才是真正的考验。