这类问题我又碰上了一次。侧栏标签云一次输出 200 条链接,每个页面都带一遍。顾问建议全加 rel=nofollow 省权重,加完一个月新文章收录反而更慢,日志里标签页的抓取量掉了七成。
第一反应是「标签云链接在每页重复 200 次 稀释了正文链接」,验证下来不成立。
真正麻烦的地方在于,几个原因的现象几乎一样。nofollow 只阻断权重传递 不阻止蜘蛛跟进;新文章唯一的入口是标签云 加 nofollow 后被降级;sitemap 里没有新文章 蜘蛛只能靠站内链接发现。
上来先统计标签页的抓取占比
grep -c '/tag/' access.log
然后把标签云收敛到 30 条高频标签
$tags = get_tags(['number' => 30, 'orderby' => 'count']);
只给冷门标签加 nofollow
echo '<a rel="nofollow" href="' . get_tag_link($id) . '">';
剩下的就是确认新文章在 sitemap 里
curl -s https://www.example.com/sitemap.xml | grep -c 'post-'
恢复的判定其实很直接。标签页抓取量回到原来的六成,新文章在发布后三天内出现在日志里。
提醒一点。nofollow 不是开关,真正的问题是每页重复两百条链接,收敛数量比加属性有效。线上能稳定复现的问题都不算难,难的是只在大流量下才出现的那种。
