文章目录
输入URL之后…
输入一个 url 发生了什么?
- 输入地址,浏览器解析网址。
- DNS解析,查询到IP,返回对应的IP。
- TCP连接(TCP 三次握手 80 端口)。[https 在 TCP 连接之前 SSL/TLS 做了加密,防劫持,需要证书,端口不同 443]
- 发送http请求。
- 返回http响应。
- 浏览器解析渲染页面。
- 断开连接(四次挥手)。
域名解析 --> 发起TCP的3次握手 --> 建立TCP连接后发起http请求 --> 服务器响应http请求,浏览器得到html代码 --> 浏览器解析html代码,并请求html代码中的资源(如js、css、图片等) --> 浏览器对页面进行渲染呈现给用户
HTTP与HTTPS
HTTP
超文本传输协议(HTTP)是用于传输诸如HTML的超媒体文档的应用层协议。它被设计用于Web浏览器和Web服务器之间的通信,但它也可以用于其他目的。
HTTP遵循经典的客户端-服务端模型,客户端打开一个连接以发出请求,然后等待它收到服务器端响应。
HTTP是无状态协议,意味着服务器不会在两个请求之间保留任何数据(状态)。虽然通常基于TCP / IP层,但可以在任何可靠的传输层上使用;也就是说,一个不会静默丢失消息的协议,如UDP。
HTTPS
HTTP Strict Transport Securi