http 从请求到响应的过程中发生了什么

  1. DNS域名解析‌:当用户在浏览器地址栏输入网址时,浏览器首先会尝试从自身的DNS缓存中查找域名的IP地址。如果缓存中没有找到,浏览器会向系统DNS缓存、hosts文件以及本地DNS服务器发起查询请求,最终获取到域名的IP地址‌。

  2. TCP三次握手‌:浏览器与服务器建立TCP连接,这个过程称为三次握手。服务器监听端口,客户端发送SYN包请求连接,服务器响应SYN+ACK包,客户端再次发送ACK包确认连接建立,完成三次握手后,客户端和服务器进入数据传输状态‌1。

  3. 发送HTTP请求‌:客户端向服务器发送一个HTTP请求,请求包含请求行、请求头部和请求体。请求行包含HTTP方法(如GET、POST)、资源路径和HTTP版本。请求头部包含客户端信息、请求条件等,如Host、User-Agent、Accept等。请求体是可选的,用于POST请求中的数据传输‌2。

  4. 服务器处理请求‌:服务器接收到请求后,解析请求,查找所需资源,并进行处理。服务器会返回一个HTTP响应,响应包括状态行、响应头部和响应体。状态行包含HTTP版本、状态码和状态消息,如200 OK表示请求成功,404 Not Found表示资源未找到‌2。

  5. 关闭连接‌:在HTTP/1.0中,每次连接只处理一个请求然后关闭。HTTP/1.1引入了持久连接,允许一个连接处理多个请求和响应,提高了性能。连接在完成所有请求和响应后可以选择关闭或保持开启状态‌3。

相关推荐
JiaWen技术圈2 分钟前
HTTP/3 协议基础
网络·网络协议·http
Shadow(⊙o⊙)7 分钟前
进程分析—从操作系统到Linux内核深入
linux·运维·服务器·开发语言·网络·c++·后端
Wild API8 分钟前
API中转站多模态接入怎么选:文本、图片、音频不要混在一起测
网络·人工智能·ai
轻颂呀11 分钟前
深度理解TCP(backlog、连接机制、抓包实践)
网络·网络协议·tcp/ip
苍煜10 小时前
Docker容器网络详解+端口映射原理(系列第二篇:实战核心)
网络·docker·容器
初願致夕霞11 小时前
基于系统调用的Linux网络编程——UDP与TCP
linux·网络·c++·tcp/ip·udp
数智化精益手记局13 小时前
什么是设备维护管理?设备维护管理包含哪些内容?
大数据·网络·人工智能·安全·信息可视化
salipopl16 小时前
FPGA中AXI-FIFO主机接口的自定义实现与versal读写工程分析
网络·fpga开发
会周易的程序员17 小时前
aiDgeScanner 工业设备网络扫描与管理工具
网络·c++·物联网·架构·electron·node.js·iot