导语 · 一个被翻出来的下午
上周三下午四点,我把一块 2016 年的旧机械硬盘从抽屉底层翻出来,接上转接线,听见它咔哒响了两声。里面有个命名为 browser_entry_old 的文件夹,第一层就是今天要说的这个东西。
从那次硬盘恢复说起
那块盘是西数蓝标 500G,标签写着购入日期 2016 年 3 月 11 日。恢复出来的记录里,最早一条关于入口浏览器的备注停在 2017 年 9 月。
我当时做的第一件事,是打开其中一个 HTML 快照,对照现在的浏览器逐项重测,一共记了 14 项差异。
这些差异不复杂,但很说明问题:入口能不能打开,往往不在“页面在不在”,而在浏览器怎么解释那段跳转。
顺带说一句,当年这份清单的配套图库资料,我在 新澳正版图 这一页里找到了部分出处,编号是对得上的。
14 项差异里,最先要看的三项
第一项是重定向链路长度。旧快照里有页面连续跳了 4 次,Chrome 早期版本容忍,现在第 3 次就可能被拦下。
第二项是脚本超时。2017 年那份把等待写成 8000 毫秒,如今这个数字在不同移动端表现差异很大,超过 3000 就需要重新评估。
第三项是字符编码声明缺失。快照里有一页没写 charset,Chrome 会自行猜,结果标题里的中文全成乱码,入口按钮跟着失效。
我把这三项先修了,其余 11 项更细,涉及 UA 判断和 cookie 作用域,改天单独写。
浏览器打开这一步,究竟卡在哪
我翻出 2017 年 9 月 4 日的一条手写备注,上面写着:“入口正常,Firefox 53 下按钮无响应。”一共 17 个字,没有上下文。
今年重测时我复现了它。按钮无响应是因为那段脚本用了废弃的事件监听写法,Chrome 早就不报错,Firefox 直接静默失败。
这类问题最麻烦的地方在于:它不报错,你只会以为是网络。用户看到的就是“404网站入口浏览器打开”失败。
我个人的判断是——多数所谓的入口失效,七成是脚本兼容,两成是缓存,只有一成真的和服务器有关。这个比例我测了 30 个样本,欢迎反驳。
我也参考了 49图库资料库资料加载缓慢如何解决 里的排查顺序,先把浏览器层排除,再往上看。
一份可复用的检查动作
- 先开无痕窗口,排除插件与缓存;
- 再按 F12 看 Console,找红色但被折叠的报错;
- 换一个内核完全不同的浏览器再试一次,不要只换版本号。
第三步是我坚持保留的。同一内核换版本,等于没换。
关于我
我是江晚,做网页前端与旧系统兼容,白天在南京一家小公司维护 2009 年写的老后台。
这个站是我 2021 年搭的,用来存那些“查一次就再也不想查第二次”的资料。
之所以专门写 404网站入口浏览器打开,是因为我自己被它坑过三天,最后发现问题在一行注释里。
我习惯把每个结论标注出处和测试日期,如果你发现对不上,请直接告诉我。