技术文档

输入网址之后,到底发生了什么

一个页面打开,看起来就是"回车,出来了"。中间其实走了好几步,把它拆开,后面很多问题就好理解了。

第一步是查地址。你输入的是 example.com 这样的名字,但机器之间认的是 IP 地址。系统先去问 DNS(可以理解成一本通讯录):这个名字对应哪台机器?查到了才知道往哪发请求。

第二步是建立连接。浏览器跟那台服务器打个招呼,商量好怎么传数据。现在绝大多数站点是 HTTPS,这一步还会顺带核对一张证书,确认"对面确实是它声称的那家",并把后面的通信加密。证书过期或被拦,通常就是卡在这里。

第三步是服务器把网页给你。注意,第一次返回的通常只是一份 HTML —— 相当于一张清单,写着"这个页面需要哪些文字、哪些样式、哪些脚本、哪些图片"。不是整个页面一次性打包发过来。

第四步是浏览器按清单继续要东西。它读到清单里写着一张图片、一个样式文件、一段脚本,就再发一批请求去取。所以你打开开发者工具的 Network 面板,会看到一次刷新产生几十条请求:第一条是 HTML(document),后面跟着图片、CSS、JS、字体。

最后一步是组装和渲染:浏览器按 HTML 搭结构、按 CSS 排版、执行 JS,把画面画出来。这里任何一步慢了,页面就慢。

动手看一下:在任意网页按 F12(或右键「检查」),切到 Network,刷新一次。找第一条类型是 document 的请求,那就是最初的 HTML;后面那些 image、stylesheet、script 就是浏览器补要的。点开任意一条,能看到它花了多久、有多大。

不用记术语。只要记住"一次打开 = 一次要清单 + 很多次按清单要东西",以后看网站慢、看某个资源加载失败,就有思路了。

想让你的业务也快人一步?

选择沧州时代网络,专业网络客服为您赋能!