在 robots.txt 里写 nofollow 其实不生效,标准到底认哪些字段

📅 2026-10-13 👁️ 0

为什么在 robots.txt 里写 nofollow 指令不起作用,robots 排除协议标准只定义了什么字段?答案很直接:标准文本里根本没有 nofollow 这个指令。按标准,robots 排除协议只有两组字段——User-agent 声明这组规则对哪个抓取程序生效,Disallow 声明哪些路径不允许进入。nofollow 属于网页的元标记指令,不属于 robots.txt 的文件字段,把它写进文件,按标准解析的抓取程序只会把它当无效行。

标准里到底有哪些字段

标准文本用 User-agent 与 Disallow 搭出整个规则块:文件头部声明这组规则面向哪个抓取程序,下面逐行列出不许进入的路径。其余写法在这个标准里找不到出处。排查「规则写了但爬虫不理」的问题时,第一步不是怀疑爬虫,而是核对写的内容在不在标准字段清单里——不在清单里的行,等于没写。

nofollow 属于哪一层

两个名词只差一个后缀,归属却分两层:robots.txt 是站点级的抓取协议,回答「哪些路径别让进」;网页元标记是文档级的指令,回答「已经拿到手的页面该怎么对待」。nofollow 属于后者。把后者写进前者,相当于把室内的告示贴在了小区大门上——位置不对,读到的人也无权执行。

想拦抓取和想拦收录分别动哪里

拦抓取,动 robots 配置:按路径填写 Disallow。要留意只拦抓取拦不住收录——页面即便不被抓取,仍可能因为外部链接被收录,展示成残缺摘要。想彻底退出索引,动服务端:确认下线的旧地址用 301 重定向指向替代页,把地址和权重去向都说清楚;本就不该对外的内容直接关闭访问。两条路各管一头,用反了方向等于白忙。

站内配置的两个常见误区

一是改完伪静态规则不回头查 robots:路径形态变了,Disallow 里按旧路径前缀写的规则就落空。二是把 robots.txt 当收录开关用:它管的是进不进门,不是收不收录。AnQiCMS 后台把 Robots.txt 配置和 301 跳转管理做成两个独立入口,正是按这两条线设计的——不该被爬的写规则,不该被索引的做跳转或关闭访问。

常见问题

问:以前的文件里写了 nofollow 行,会立刻出问题吗? 答:不会立刻出事,但按标准解析的抓取程序根本没执行这行,你以为生效的效果其实一直没生效,建议清理并改用正确的层。

问:栏目想暂时不让进索引,先动哪里? 答:先判断该不该对外:不该对外就关闭访问,并把旧链接以 301 指向替代页面;只是暂时不想进索引,用页面级控制处理,别硬塞进 robots.txt。

问:调整完抓取规则,检查顺序是什么? 答:先核对新路径前缀与现有 Disallow 条目是否匹配;再走一遍 301 重定向链,确认没有断点;最后看新生成的站点地图里地址是否已切换到位。

相关文章

向百度推送接口提交链接后,返回的 remain 和 not_valid 字段怎么读

按百度搜索资源平台文档,API 推送成功时返回 success、remain、not_same_site、not_valid 四个字段:remain 是当日剩余配额,not_valid 是不合法链接清单;失败时返回以 4 开头的客户端错误码或 500 服务端错误码。本文按字段讲排查顺序,并说明链接推送与站点地图各覆盖收录链路的哪一段。

2026-10-13

刚发的页面引擎迟迟不抓,站点地图和 IndexNow 各管哪一段

新页面迟迟不被抓取,要先分清站点地图和 IndexNow 各管收录链路的哪一段:站点地图提供全量清单、告诉引擎站点有什么;IndexNow 这类即时通知机制负责把内容变更第一时间告知参与的引擎。两者互补,站内配齐全量与增量两条链路才能稳住收录时效。

2026-10-13

站点地图单文件上限是多少,URL 过万时怎么拆成索引文件

站点地图单个文件的条数与体积上限由协议约定,接近或超过时要拆成多份子文件并用索引文件分组,按栏目、更新时间维度组织。本文说明上限来自站点地图协议、超限怎么拆分、以及拆分后仍要靠主动推送补收录时效的做法。

2026-10-13

企业官网用 Docker 部署,端口和数据备份要提前准备什么

企业官网用 Docker 部署上线前,要先把端口映射和数据备份两件事规划好。系统提供官方镜像、默认监听 8001 端口,上线前需明确内外端口映射与访问入口;同时备份能力覆盖数据与静态文件,可在恢复时还原,避免容器重建后内容丢失。

2026-10-13

robots.txt 里的 Disallow、星号和美元符号分别是什么约定

robots.txt 的两类基础指令是 Allow 与 Disallow,分别表示允许与禁止抓取某类路径;星号是通配符,可匹配任意字符序列,行尾美元符号表示地址到该处精确结束。这套写法由 RFC 9309 标准化。要注意的是它只约束抓取行为,不决定页面能否被收录,也不对所有机器人有效;站内改动伪静态规则后,robots 配置需要跟着复查一遍匹配是否仍然成立。

2026-10-13

页面改了用户却看到旧版本,从缓存清发到验证按什么顺序排查

内容改了前台却还是旧页面,多数不是程序没生效,而是中间缓存层仍命中旧副本。排查按三步走:先在源站证伪,确认改动真的落库;再按合适粒度清缓存,边缘节点支持按地址、域名、标签、前缀与全站多种范围;最后看响应里的缓存状态头是否已从命中转为回源,并确认用户侧无痕验证通过。批量改动前先做备份,留好回退。

2026-10-13

全站替换改了栏目名称之后,锚文本和伪静态规则要不要跟着动

全站替换能把正文里的关键词和链接一次性批量改掉,但它只覆盖内容文本层:栏目名称、地址形式属于结构与路由层,改完后锚文本库里的关键词指向、伪静态规则的匹配路径都可能和新地址对不上。收尾要做三件事——核对锚文本投放范围、复查伪静态规则、抽查新旧地址跳转,防止批量改动留下断链。改前先备份,留好回退。

2026-10-13

内容没改页面还是慢,缓存头的 max-age 和 s-maxage 先查哪个

内容没有改动但页面加载慢时,缓存控制头的检查顺序是先看指令作用于哪一层:max-age 管浏览器私有缓存的保鲜秒数,s-maxage 管 CDN 等共享缓存并会覆盖 max-age,no-store 则让任何缓存都不存。本文给出传输层与渲染层的二分法,以及浏览器、共享缓存、源站三层各自的检查动作。

2026-10-13