1. 用户输入URL:用户在浏览器地址栏输入一个URL,例如 https://www.kafeih.com/

  2. DNS解析:浏览器首先需要将域名转换为IP地址。如果本地DNS缓存中没有该域名的记录,浏览器会向DNS服务器发送请求,获取域名对应的IP地址

  3. 建立TCP连接:浏览器通过IP地址与服务器建立TCP连接。这个过程遵循三次握手协议,确保连接的可靠性

  4. 发送HTTP请求:一旦TCP连接建立,浏览器就会构造HTTP请求报文,并通过TCP连接发送给服务器。HTTP请求包括请求行、请求头、空行和请求体等部分

  5. 服务器处理请求:服务器接收到HTTP请求后,会根据请求的类型(如GET或POST)和资源路径等信息,进行相应的处理。如果是动态内容,服务器可能会调用后端脚本(如Java)来生成内容

  6. 服务器响应:服务器处理完请求后,会构造HTTP响应报文,包括状态行、响应头、空行和响应体等,然后将响应报文发送回浏览器

  7. 浏览器渲染页面:浏览器接收到服务器的响应后,会根据响应内容进行页面渲染。如果是HTML页面,浏览器会解析HTML、CSS,并执行JavaScript代码,最终将网页展示给用户

  8. 关闭TCP连接:在HTTP/1.0及更早版本中,一个TCP连接只处理一个请求和响应,完成后就会关闭。而在HTTP/1.1中,默认情况下TCP连接可以复用,即一个连接可以处理多个请求和响应,减少了连接建立和关闭的开销

324次浏览 1人投票
没有回复
欢迎来到虚拟咖啡社区,这是一个专为程序员和技术爱好者设计的多元化在线社区。在这里,我们致力于打造一个充满活力和支持性的环境,让每一位成员都能在这里找到归属感和成就感
iotguy
iotguy 的推介