Single Post · 详情笔记

恢复网站59667完整版:一次 03:14 的抓取失败,和后面三天的重来

我把那天凌晨的日志翻了出来,逐条对照时间戳,记下那些没人愿意写进说明文档的东西。

作者:江晚 发布于 2026-10-28 约 2400 字

这一页的十条索引

每条都指向一个具体的动作、某个时刻,或者某个人说过的一句话。

场景

03:14,陈默把 curl 的返回码贴进群里

401 后面跟着一行 expired_at,他说先别重试,等他把时区对齐。我们等了四十分钟。

01 / 索引
核心

恢复网站59667完整版的第一次尝试,死在缓存键上

键名里混了一个大写字母,取回来的是三天前的旧快照。这个细节后来被写进恢复步骤第一条。

02 / 索引
引用

《网页存档实践手册》第 74 页那句话

“先确定你要恢复的是哪一个状态,否则完整只是数量上的完整。”我抄在便签上,贴了三天。

03 / 索引
对照

10 月 21 日 22:40 与 10 月 22 日 08:05 的两次快照

相差 1137 个字节,全部落在页面底部的资源区。差异清单打印出来有 6 页。

05 / 索引
反馈

一位叫“半山”的读者,写了 9 行评论

他说他那边打开是空白,只有页脚。我们比对后发现是同一处资源引用失败,他的截图很有用。

07 / 索引
回溯

凌晨 05:02,我关掉了自动重试脚本

它在 3 分钟内请求了 187 次。这个数字后来成了我判断“是否该放弃”的基准线。

09 / 索引
补充

陈默说的那句“别急着叫它完整版”

他说恢复网站上最危险的不是缺文件,是缺文件的时候没人发现。我同意,写到一半又删了半句。

10 / 索引
延伸

49 图库app 的旧版本号停在 3.2.7

版本号本身说明了时间点:那天之后的所有变更,都不在原始清单里。

11 / 索引
旁注

一次 打开链接跳转浏览器 的失败重放

跳转是成功的,但落地页多了一层中转。不是错,只是让人误判进度。

12 / 索引

那天凌晨到底发生了什么

10 月 21 日 03 点 14 分,陈默在群里贴了一行 HTTP 401,后面跟着 expired_at: 2026-10-20T19:14:02Z。我盯着那个时间看了十几秒才反应过来:服务器用的是 UTC,我这边是本地时间,差了整整八小时。

这不是什么大问题,但它直接决定了我第一版方案的成败。我们原本打算按页面快照的时间戳逐个取回,结果所有请求都落在了过期窗口里,回来的全是缓存副本。

04 点零六分,我拿到第一份“完整”包,解压出来 2143 个文件。看着挺像那么回事。周乐远程看了一眼,说了一句让我后背发凉的话:这跟三天前那版一模一样。

后来我们才查到原因:缓存键里混进了一个大写字母,所有键名被归一化之后指向同一个旧快照。完整版的第一层意思,是数量和原站一致;第二层,是每一份都得是你以为的那一份。那天我只做到了第一层。

说句可能不太好听的:很多所谓“完整恢复”,其实只是把能下载的都下载了一遍。缺的那几个资源从来不会主动告诉你它缺了,它们安静地留在 404 列表里,等你半年后才发现页面右下角那块空白不是设计。

05 点 02 分,我关掉了自动重试脚本。三分钟内它请求了 187 次,日志滚得比我看得快。陈默在群里说,先停,别把对方打挂了。这句话我后来写进了流程文档的第 2 条。

第二天下午,周乐在地铁上给我发了一张便签照片,写了七个路径。他说是他照着旧笔记手抄的,第七条被水洇花了,只能认出前半截,我把那半截和 浏览器打开网站123456 的旧记录对了一遍,才发现是同一批资源的不同入口。

10 月 22 日早上 08 点 05 分,我又拉了一次快照,跟前一晚 22 点 40 分那份做 diff,差了 1137 个字节,全部集中在底部资源区。把差异打印出来是 6 页纸,我拿红笔圈了 11 处。

这 11 处里有 9 处是路径写法不同,剩下 2 处才是真正的差异:一个引用的文件名被改了大小写,一个多了一个尾随斜杠。就这两个小东西,让三个页面在本地打开时白屏。

中间还出过一次乌龙。我把取回码抄错了一位,第三次才拿到正确内容,事后在注释里补了一句:免费打开49图库app软件 之类的入口如果带有空格,复制粘贴会被浏览器吞掉。这条注释现在还在。

读者“半山”在 10 月 24 日晚上留了 9 行评论。他说他那边打开只有页脚,其他全空。我请他截图,比对后发现他命中的正是那处大小写差异。他的截图比我自己的日志更直接,我把它存进了归档。

还有一条记录我没删,就是 17图库正版资料恢复免费打开17图库使用评价 下面那条不太客气的反馈。它不好看,但它说明一件事:路径能不能打开,和“完整”与否是两码事。前者是入口问题,后者是内容问题,混在一起谈就会得出错误结论。

整个事情收尾在 10 月 27 日晚上。最后一版清单 2147 个文件,比第一版多 4 个,少的 0 个。数量上只差 4,但意义完全不同——那 4 个正是之前被静默丢掉的部分。

我把三天的日志按时间重新排了一遍,删掉了大部分没有信息量的重试记录,留下 62 条有效事件。这就是这一页的底稿。它不漂亮,但它能复现。

江晚的书桌一角

关于我

我是江晚,做网页存档和资料恢复这类偏笨的活儿,习惯把每次操作的时间戳都留着。这个站是我自己的笔记本,不接广告,也不做流量号。

我写东西会引用,能查到出处的才写,查不到的会标注“未核实”。这条规矩是 2023 年吃过一次亏之后定下来的。

之所以做「恢复网站59667完整版」,是因为我发现很多恢复教程只讲成功的那一次,不讲失败的那 186 次。我想反过来写。

先确定你要恢复的是哪一个状态,否则完整只是数量上的完整。 ——《网页存档实践手册》,第 74 页,2021 年第二版