最稳妥的“彻底隐身”组合是noindex,nofollow,但必须严格小写、逗号分隔无空格,置于内且由服务端静态输出;若放错位置、动态注入或被robots.txt屏蔽,则指令失效。

直接加 <meta name="robots" content="noindex"> 就能阻止当前页被搜索引擎收录,但写错一个字符、放错位置、或用在不该用的地方,就等于没写。
noindex 写法必须严格符合规范
拼写、大小写、分隔符全错不得——noindex 不能写成 no-index、noIndex 或 NOINDEX;多个指令必须用英文逗号连接,不能有空格:noindex,nofollow 合法,noindex, nofollow(带空格)失效。
常见翻车点:
-
content值里混入中文逗号、顿号、全角符号 - 把
<meta>放在里,或放在但被 JS 动态插入(爬虫基本看不到) - 误以为加了
rel="nofollow"的链接就能让目标页不被索引——完全无关
noindex,follow 和 noindex,nofollow 效果差别很大
前者允许爬虫顺着你页面里的链接发现新页面,后者连链接都不看。比如分页页码页 /blog?page=2,通常该设为 noindex,follow,否则首页的链接权重传不出去,后续页也难被发现。
典型适用场景:
-
noindex,nofollow:后台登录页、测试环境页、用户私有页(既不想被搜到,也不希望爬虫乱点) -
noindex,follow:分页页、筛选页、排序页(内容重复但需保留链接发现能力) -
noarchive或nosnippet单独加在index页上,可禁快照或摘要,但页面仍可出现在搜索结果中
SPA 页面和非 HTML 资源不能只靠 meta robots
单页应用(如 React/Vue 路由页)返回的 HTML 往往是空壳,<meta name="robots"> 在前端渲染后才注入,爬虫抓到的是无标签的初始 HTML,指令无效。
此时必须由服务端根据 URL 路径,在 HTTP 响应头中返回 X-Robots-Tag: noindex。它优先级高于 meta 标签,且适用于 PDF、JSON、图片等非 HTML 资源。
注意缓存陷阱:CDN 或反向代理若缓存了带 X-Robots-Tag: noindex 的响应,之后即使撤掉指令,页面也可能长期无法被索引。
别忘了 robots.txt 和 meta robots 的分工
robots.txt 控制“能不能抓”,meta name="robots" 控制“抓了之后怎么处理”。比如你在 robots.txt 里禁止爬 /admin/,但某天不小心漏写了一条规则,而 /admin/login.html 又恰好被其他页面链出——只要它没加 noindex,就可能被收录。
所以关键页面必须双保险:在 robots.txt 中限制抓取 + 在页面 HTML 的 中加 <meta name="robots" content="noindex,nofollow">。前者防主动抓取,后者防被动发现。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











