当你在浏览器中输入一个URL并敲下回车后,浏览器会执行一系列步骤来访问并展示网页。下面是浏览器访问网页的一般流程:
-
DNS解析 :浏览器首先会提取URL中的主机名,然后向DNS服务器发送请求,将主机名解析为对应的IP地址**。这个IP地址用于建立与服务器的连接。**
-
建立TCP连接 :使用获得的IP地址,**浏览器会通过TCP协议与服务器建立连接。**这个过程包括三次握手,确保客户端和服务器之间的连接可靠。
-
发送HTTP请求 :一旦建立了TCP连接,浏览器会发送一个HTTP请求给服务器。 该请求包含了需要访问的资源的类型(如HTML、CSS、JavaScript等)以及其他的请求头信息。
-
服务器处理请求 :服务器接收到请求后 ,会根据请求的内容和路径,找到对应的资源文件 。服务器可能会执行一些处理逻辑,如动态生成内容。
-
接收响应 :服务器处理完请求后 ,会生成一个HTTP响应 ,其中包含了请求的资源以及其他的响应头信息。服务器将这个响应发送回浏览器。
-
下载资源 :浏览器接收到服务器发送的响应后,会开始下载响应中的资源文件 ,如HTML、CSS、JavaScript、图片等。
-
解析文档 :**一旦资源文件被下载完毕,浏览器会对HTML文件进行解析,构建DOM树。**同时,还会解析CSS文件构建CSSOM树。
-
渲染页面 :浏览器根据DOM树和CSSOM树构建渲染树,并进行布局和绘制,最终将页面内容显示在屏幕上。
-
执行JavaScript :如果HTML中包含了JavaScript代码,浏览器会执行这些代码,对页面进行交互和动态效果的实现。