学习笔记

浅谈HTTP

#HTTP #网络协议

**HTTP:互联网的快递系统

你有没有想过——

我们每天打开网页、看视频、网购下单,

这些数据是怎么从地球另一端传到你屏幕上的?


一、当我点击“打开网页”时,究竟发生了什么?

浏览器其实在做一件很像“寄快递”的事。

它要把你的“请求”——比如登录、搜索、下单——

打包成一份信件,送到网站的服务器上。


二、那这封信是怎么写的?

它必须按照一种标准来写,这个标准就叫 HTTP 协议

HTTP 规定了信里该写什么:

  • 我要发给谁(Host)

  • 我要干什么(GET、POST…)

  • 我带了什么内容(账号、密码、搜索词)

这份信,我们叫它“HTTP 报文”。

它就像包裹里的装箱单。

命令行

curl -I www.baidu.com

网页鼠标右键 ,Inspect(检查) $\Rightarrow$ 网络 $\Rightarrow$ 刷新页面 ,就可以看到http报文。 ![[Screenshot 2025-10-12 at 21.44.42.png]]


三、那我怎么保证别人看不见我的信?

如果你用的是老式的 HTTP,就相当于用透明塑料袋寄信——

路上谁都能看到。

所以现代网站几乎都用了 HTTPS

它在 HTTP 外面加了一层“加密外壳”,

用的技术叫 TLS/SSL 协议

这时候你就会问:那我怎么知道网站是真的?

答案是:网站必须有一张“身份证”,

也就是 CA 证书,由权威机构颁发。

浏览器一看证书,就知道对方是不是“正版”。

命令行:

openssl s_client -connect www.baidu.com

在网址栏的地方,有一把“小锁”,里面就是关于“CA”证书的相关内容 ![[Screenshot 2025-10-12 at 21.41.26.png]]

四、写好信之后,它是怎么被送出去的?

光有信还不行,还得寄。

这一环节由 TCP 协议 负责。

它会把整封信拆成一小块一小块的数据包,

每个包都有编号,保证不丢、不乱。

有点像快递公司把大件拆成多个小包裹,一起出发。


五、那快递单号在哪儿?

每个包裹外面都要贴上收件人和发件人地址

在网络世界,这张单就是 IP 地址

  • 你的电脑是发件人(源 IP)

  • 网站服务器是收件人(目标 IP)

这些包裹在网络中不断被“中转”,

每经过一个“分拣中心”(路由器),

就会被转发到下一站,直到找到目标。

这就是 IP 协议 的工作。

命令行:

nslookup www.baidu.com

traceroute www.baidu.com

六、那这些包裹是怎么真的跑到对方电脑上的?

这就得靠更底层的两层了:

数据链路层物理层

它们负责让信号真的“在路上跑”:

通过网线、光纤、Wi-Fi、电波……

在一根根“信息公路”上,把数据送达对方。


七、那服务器收到了,会做什么?

服务器拆开所有包裹,重新拼好,

处理你的请求——比如验证密码、查找商品、生成网页——

然后再按照同样的流程,把结果寄回来。

你的浏览器收到这些包裹后,拆开、渲染、显示网页。

整个来回,就完成了一次“信息快递”。


八、总结一下,这趟快递旅程都经历了哪些环节?

快递环节网络层级对应协议作用
写信、加密应用层HTTP / HTTPS / TLS描述内容、保护隐私
拆包编号传输层TCP / UDP确保可靠传输
贴地址单网络层IP确定收发双方
运输上路数据链路层 + 物理层Ethernet / Wi-Fi 等实际传输信号

九、所以,当我敲下网址那一刻,我到底在干嘛?

你其实是在发出一份“数字快递”:

浏览器打包 → 加密 → 编号 → 贴地址 → 上路传输 → 服务器签收 → 回包显示。

HTTP 就是那张发货清单,

而 TCP/IP,就是支撑这场全球级快递系统的骨架。

每一次网页加载,

都是一场跨越光缆、信号塔、海底电缆的奇迹。