标签

Web开发

20篇文章

5 分钟阅读

规则没有生效,为什么两边都当成通过了

我在两行 robots.txt 里调换顺序,urllib 的结果当场反转。把 34 KiB 的 AGENTS.md 喂给 Codex,文件后半截的测试标记变成 0 命中,终端没有报错。声明式规则解析失败时不会停下,只会假装规则不存在。219 次运行全部以退出码 0 结束,先确认是哪个解析器给的判定。

SEO 爬虫 AI开发
14 分钟阅读

一年没动过的文章,Last-Modified 却写着昨天:部署会抹掉缓存校验值

给去年写的文章发了个 curl,Last-Modified 显示的却是昨天的部署时间。拆开 ETag 一看,就是文件修改时间和大小拼成的十六进制。同一份源码重新构建出的 1,346 个 HTML 完全字节一致,可一次部署就让整站的条件请求全部落空,本该拿到的 304 再也换不回来。文中给出实测过程与几种可行的缓解方案。

SEO 爬虫抓取 HTTP缓存
13 分钟阅读

声明标题的七个位置里,只有六个是我写的

一篇文章的标题会在 title、h1、og:title、headline、RSS 等六处被声明,1,296 篇全部一致。真正出问题的是第七处:指向文章的 18,296 条内部链接里,锚文本与目标标题完全一致的只有 0.7%,根源是包住整张卡片的那一个 a 标签。本文给出七个渠道的实测数据与可照做的修复路径。

SEO 无障碍 锚文本
10 分钟阅读

46,382条内部链接里,有24,948条撞在301上

本来是为测量链接文本的无障碍指标写的脚本,结果挖出一个URL缺陷。对构建产物中1,334个HTML页面的内部链接做全量扫描,超过一半的24,948条指向不带尾部斜杠的地址,也就是要走一次301跳转。本文记录成因、四个阶段的修复,以及把它清到零的过程。

SEO 内部链接 重定向
13 分钟阅读

把列表页从链接图里拿掉,296篇就再也走不到了:抓取深度实测

每篇文章都挂着中位数8条内链,我以为内链已经够了。对1,330个构建产物页做广度优先遍历后,1,288篇文章中有1,276篇位于深度2。可是一旦把四个语言的列表页从链接图里拿掉,296篇从首页再也走不到。相关文章模块再多,也替代不了四个语言列表页这个入口。从首页出发时,四个列表页才是通往深度2的门。

SEO 内链 可抓取性