浏览器输入一个 url 的解析过程

DNS 解析

浏览器查询 DNS,获取域名对应的 IP 地址:具体过程包括浏览器搜索自身的 DNS 缓存搜索操作系统的 DNS 缓存读取本地的 Host 文件向本地 DNS 服务器进行查询等。对于向本地 DNS 服务器进行查询,如果要查询的域名包含在本地配置区域资源中,则返回解析结果给客户端,完成域名解析(此解析具有权威性);如果要查询的域名不由本地 DNS 服务器区域解析,但该服务器已缓存了此网址映射关系,则调用这个 IP 地址映射,完成域名解析(此解析不具有权威性)。如果本地域名服务器并未缓存该网址映射关系,那么将根据其设置发起递归查询或者迭代查询

TCP 连接

建立TCP连接就是要在发送数据之前建立通道,客户端和服务端之间建立通道就可以在这个通道里发送数据。
浏览器获得域名对应的 IP 地址以后,浏览器向服务器请求建立链接,发起三次握手;
浏览器输入一个 url 的解析过程_第1张图片

发送 HTTP 请求

TCP 连接建立起来后,浏览器向服务器发送 HTTP 请求;

服务器处理请求并返回 HTTP 报文:服务器接收到这个请求,并根据路径参数映射到特定的请求处理器进行处理,并将处理结果及相应的视图返回给浏览器;
请求报文:
浏览器输入一个 url 的解析过程_第2张图片
响应报文:
浏览器输入一个 url 的解析过程_第3张图片

浏览器解析渲染页面

浏览器解析并渲染视图,若遇到对 js 文件、css 文件及图片等静态资源的引用,则重复上述步骤并向服务器请求这些资源;浏览器根据其请求到的资源、数据渲染页面,最终向用户呈现一个完整的页面。

连接结束。

你可能感兴趣的:(计算机基础&网络编程,服务器,前端,运维)