在浏览器中输入网址,到页面显示出来,中间发生了什么?
1、查询DNS,获取域名对应的IP。
(1)检查本地hosts文件是否有这个网址的映射,如果有,就调用这个IP地址映射,解析完成。
(2)如果没有,则查找本地DNS解析器缓存是否有这个网址的映射,如果有,返回映射,解析完成。
(3)如果没有,则查找填写或分配的首选DNS服务器,称为本地DNS服务器。服务器接收到查询时:
(4)如果本地DNS服务器也失效:
2、客户机发送HTTP请求报文:
(1)应用层:客户端发送HTTP请求报文
(2)传输层:切分长数据,并确保可靠性。
(3)网络层:进行路由
(4)数据链路层:传输数据
(5)物理层:物理传输bit
3、服务器端经过物理层→数据链路层→网络层→传输层→应用层,解析请求报文,发送HTTP响应报文。
4、客户端解析HTTP响应报文
5、浏览器开始显示HTML
6、浏览器重新发送请求获取图片、CSS、JS的数据。
7、如果有AJAX,浏览器发送AJAX请求,及时更新页面。
为你推荐以下文章
说几件无关紧要的小事
版本控制之助你开始使用 git 的简易指南
推荐一款特别厉害的在线工具,程序员的百宝箱
我所知道的和学习有关的网站友链全部在这了
知乎:谭庆波