meta robots的follow/nofollow仅控制爬虫是否跟踪页面内链接,不影响本页索引;需置于head中、小写无空格;不替代robots.txt的访问拦截。

用 <meta name="robots" content="..."> 中的 follow 或 nofollow 指令,就能控制搜索引擎是否提取当前页面里的链接。
follow 和 nofollow 的作用很明确
它们不决定“爬虫能不能访问本页”,只决定“爬虫要不要顺着本页里的超链接继续抓取其他页面”:
-
follow:允许爬虫解析并跟踪页面中所有
<a href="...">链接,用于发现新页面 - nofollow:禁止爬虫跟踪本页任何链接,这些链接不会被当作入口去抓取目标页
- 这两个指令和
index/noindex独立——加了nofollow不代表本页不能被索引,反之亦然
常用组合与实际效果
单独写 follow 很少必要(默认行为),真正起作用的是带 nofollow 的组合:
-
content="noindex, nofollow":本页不进搜索结果,且页内所有链接都被忽略(适合登录页、测试页) -
content="noindex, follow":本页不收录,但页内链接(如“下一页”“相关文章”)仍可被爬虫发现和抓取(适合分页、筛选页) -
content="index, nofollow":本页可被搜索到,但不传递权重给外链(适合含广告或用户评论的页面)
关键注意事项
这个控制要真正生效,必须满足几个硬性条件:
立即学习“前端免费学习笔记(深入)”;
- 标签必须写在 HTML 的
<head>内,且在首次 HTTP 响应中就存在——JS 动态插入无效 - 拼写严格小写,逗号后不加空格:
noindex,nofollow✅;noindex, nofollow❌(部分爬虫可能失效) - 它只对已成功抓取的页面起作用;如果
robots.txt已禁止该路径,爬虫根本不会下载 HTML,meta 标签也就没机会执行 - 不要和
rel="nofollow"混用:后者是加在单个链接上的,用于局部控制;前者是全页级指令,影响整页所有链接
它不能替代 robots.txt
想彻底阻止爬虫访问某类页面(比如后台路径 /admin/),nofollow 完全不管用。因为爬虫已经把页面下载下来了,才开始读 meta 标签。真正拦住请求的第一道防线,永远是 robots.txt 中的 Disallow 规则。



















