标签仅是建议,生效需页面被成功抓取;若 robots.txt 屏蔽路径、返回 4xx 错误、content 值大小写/空格/标点错误、或 JS 动态插入,均导致失效;X-Robots-Tag 更可靠且优先级更高。

HTML <meta name="robots"> 标签本身不决定是否被索引,只提供建议;能否进搜索结果,取决于爬虫是否抓到页面 + 是否遵守该建议。
robots meta 标签生效的前提是页面能被爬虫成功抓取
如果 robots.txt 屏蔽了路径(比如 Disallow: /admin/),Google 就不会去请求 /admin/login.html,哪怕它里面写了 noindex,这个标签也压根不会被看到。此时页面既不被抓、也不被索引——不是因为 noindex 起效,而是因为根本没机会执行。
- 先检查
robots.txt是否放行目标 URL:爬虫必须能 GET 到 HTML 才会解析<meta name="robots"> -
noindex不是“删除指令”,它只在页面被抓取后起作用;已收录页面加了noindex会逐步消失,但可能需要数天到几周 - 若页面返回 404/410 或服务器拒绝连接,
<meta>标签完全无效——爬虫连 HTML 都没拿到
content 值写错等于没写,大小写和空格都影响解析
搜索引擎对 content 属性的值非常敏感,写错一个字符就可能让整条指令失效。
- 必须全小写:
noindex,nofollow有效,NoIndex,NoFollow大概率被忽略 - 逗号必须紧贴前后关键词:
noindex, nofollow(逗号后有空格)在部分旧爬虫中会截断为只识别noindex - 不能用中文逗号、顿号或分号;不能加引号或等号以外的符号
- 错误示例:
<meta name="robots" content="NOINDEX, NOFOLLOW">—— 这个标签大概率被跳过
动态插入的 robots meta 标签基本不起作用
绝大多数主流爬虫(包括 Googlebot 和 Bingbot)不执行 JavaScript,也不会二次扫描 DOM。你用 JS 插入的 <meta name="robots">,它们看不到。
把任意文章或文档内容转换成精美的全屏翻页 HTML 演示文件(幻灯片风格)。当用户发来一篇文章、文档链接、Markdown 内容、或粘贴的文本,并且希望生成演示用的 HTML 时触发。支持任意内容来源:iWiki 链接、KM 链接、本地文件路径、直接粘贴的文本。生成的 HTML 文件保存到本地工作区,并通过企微直接发送给用户。触发词示例:帮我把这篇文章做成PPT、转成演示文档、生成HTML幻灯片、做个演示、转成可以演示的格式、article to deck、make a slide。
立即学习“前端免费学习笔记(深入)”;
- 必须硬编码在 HTML 源码的
内,且位于首次渲染前可读位置 - 验证方式:右键「查看网页源代码」,搜索
<meta name="robots">,确认存在且格式正确 - 服务端渲染(SSR)或静态生成(如 Next.js 的
getStaticProps)可以保证标签出现在源码里;CSR 场景下不要依赖 JS 注入
X-Robots-Tag 比 meta robots 更可靠,但需要服务端配合
如果你控制得了服务器(Nginx/Apache/Node.js 后端),X-Robots-Tag 是更稳的选择——它在 HTTP 响应头里发送,比 HTML 解析早得多,且支持 PDF、图片等非 HTML 资源。
- 配置示例(Nginx):
add_header X-Robots-Tag "noindex, nofollow"; - 指定 Googlebot:
X-Robots-Tag: googlebot:noindex,Bing 不受影响 - 注意:CDN 或反向代理可能覆盖或删除响应头,需确认最终返回的 header 确实包含该字段
- 优先级高于
<meta name="robots">,两者冲突时以X-Robots-Tag为准
真正容易被忽略的是:索引行为不是单点控制,而是“抓取 → 解析 → 决策”三阶段链条。漏掉任一环(比如 robots.txt 拦截、JS 动态写标签、HTTP 头被 CDN 清洗),noindex 就只是 HTML 里一行安静的注释。


















