在浏览器输入baidu.com并按下回车后会发生:1、域名解析;2、建立TCP连接;3、发送HTTP请求;4、服务器处理请求;5、服务器发送HTTP响应;6、浏览器接收响应;7、渲染页面;8、连接关闭。域名解析是指,浏览器将输入的URL “baidu.com” 解析为对应的IP地址。
1、域名解析
浏览器首先将输入的URL “baidu.com” 解析为对应的IP地址。这个过程叫做域名解析。浏览器会向本地域名服务器或者运营商的DNS服务器发起一个DNS查询请求,以获取 “baidu.com” 对应的IP地址。
2、建立TCP连接
一旦浏览器获取到 “baidu.com” 的IP地址,它会尝试建立与该IP地址的Web服务器的TCP连接。这个过程经历了三次握手,确保客户端和服务器之间建立可靠的连接。
3、发送HTTP请求
一旦TCP连接建立,浏览器会发送一个HTTP请求,请求 “baidu.com” 的服务器。HTTP请求中包含了请求的方法(GET、POST等)、请求的资源路径、请求头等信息。
4、服务器处理请求
服务器收到浏览器发送的HTTP请求后,开始处理请求。根据请求的资源路径,服务器会查找对应的文件或处理程序来生成响应。
5、服务器发送HTTP响应
服务器生成HTTP响应,包含了HTTP状态码(200表示成功、404表示资源未找到等)、响应头和响应体等信息。响应体可能是请求的HTML页面、图片、CSS样式表等。
6、浏览器接收响应
浏览器接收到服务器返回的HTTP响应后,开始解析响应内容。
7、渲染页面
如果响应的内容是HTML页面,浏览器会解析HTML文档,并请求HTML页面中引用的其他资源(如图片、CSS、JS等),并将页面渲染出来。
8、连接关闭
在页面渲染完成后,TCP连接会被关闭,浏览器显示完整的 “baidu.com” 网页内容,并且可以进行用户的交互操作。
延伸阅读
TCP连接是什么
TCP连接是一种可靠的网络连接方式,它是基于传输控制协议(Transmission Control Protocol,TCP)的通信方式。在计算机网络中,TCP连接用于在两个网络节点之间建立可靠的数据传输通道。在建立TCP连接时,客户端和服务器之间需要进行三次握手来确保连接的建立。三次握手的过程如下:
- 客户端发送一个连接请求报文(SYN)给服务器。
- 服务器收到请求后,回复一个确认报文(SYN+ACK)给客户端。
- 客户端再次回复一个确认报文(ACK)给服务器。