当用户在浏览器中输入URL并按下回车键后,以下是一个页面从输入URL到加载显示完成的过程中所发生的主要步骤:
1DNS解析
1.DNS解析
:浏览器首先会解析URL
中的域名部分,将其转换为对应的IP地址。它会查询本地DNS缓存,如果没有找到,则向DNS服务器发送请求
进行解析。
2建立TCP连接
2.建立TCP连接
:浏览器使用HTTP协议
与Web服务器
建立TCP连接。这个过程涉及到三次握手,即客户端发送SYN包
,服务器返回SYN+ACK包
,最后客户端发送ACK包确认连接建立
。
3发送HTTP请求
3.发送HTTP请求
:建立TCP连接后,浏览器会向Web服务器发送HTTP请求。请求中包含了请求方
·(GET、POST等)、请求头
(包含用户代理、Cookie等信息)以及请求体
(对于POST请求)。
4服务器处理请求
4.服务器处理请求
:Web服务器接收到浏览器发送的HTTP请求后,会根据请求的内容进行处理。这可能涉及到查询数据库、读取文件等操作。
5服务器响应
5.服务器响应
:Web服务器根据请求的处理结果生成HTTP响应
,并将其发送回浏览器。响应中包含了状态码
、响应头
(包含内容类型、缓存策略等信息)以及响应体
(包含HTML、CSS、JavaScript等页面内容)。
6下载页面资源
6.下载页面资源
:浏览器收到服务器的响应后,会解析响应头,确定响应的内容类型。如果是HTML页面
,浏览器会开始下载页面中引用的其他资源,如CSS文件
、JavaScript文件
、图片
等。
7页面渲染
7.页面渲染
:浏览器使用HTML解析器将HTML文档解析成DOM树,并根据CSS样式表解析出样式规则。然后,浏览器会将DOM树和样式规则结合起来,生成渲染树。最后,浏览器根据渲染树进行布局和绘制,将页面内容显示在屏幕上。
8完成加载
8.完成加载
:当所有页面资源都下载完成并且页面渲染完成后,浏览器会触发页面加载完成的事件。
网友评论