在浏览器输入URL到页面展示发生了什么?
总体来说,浏览器从输入URL到展现页面的过程可以概括为:DNS解析、TCP连接、HTTP请求、服务器响应、解析渲染、连接结束。
1、DNS解析: 浏览器会从输入的URL中解析出域名,然后向DNS服务器发起域名解析请求,获取对应的IP地址。如果DNS缓存中存在该域名的IP地址,则直接返回给浏览器,否则就需要进行递归查询,最终得到该域名对应的IP地址。
2、TCP连接: 浏览器根据获取到的IP地址,发起TCP连接请求,通过三次握手建立起可靠的连接。这个过程中包括客户端发送连接请求报文,服务端发送连接确认报文,客户端再发送确认报文。
3、HTTP请求: 建立TCP连接后,浏览器会向服务器发送HTTP请求报文,请求服务器返回对应的资源。其中请求 报文包括请求方法、URL、协议版本、请求头等信息。
4、服务器响应: 服务器收到请求后,会返回对应的响应报文,其中包括响应状态码、响应头以及响应内容等信息。浏览器会根据响应报文中的状态码来判断请求是否成功,并进行相应的处理。
5、解析渲染: 浏览器接收到响应内容后,会对HTML、CSS和JavaScript等进行解析,并将解析后的内容进行渲染,最终呈现在页面上。
6、连接结束: 页面展示完成后,浏览器会关闭TCP连接,释放资源。
详细可参考这篇:https://blog.csdn.net/JHXL_/article/details/125243612
本文转发自:https://blog.csdn.net/fang_guobing/article/details/129892936