大致流程
- 合成URL
- DNS域名解析
- 建立TCP连接
- 发送HTTP请求,处理请求,返回响应结果
- 关闭TCP连接
- 浏览器渲染
合成URL
浏览器根据用户输入信息判断是搜索还是网址,如果是搜索内容,就将搜索内容+默认搜索引擎合成新的URL;如果用户输入内容符合URL规则,浏览器就会根据URL协议生成合法的URL。
DNS域名解析
DNS的域名解析,在客户端和浏览器、本地DNS之间的查询是递归查询;在本地DNS服务器和根DNS服务器及其子服务器之间是迭代查询。
递归:
在客户端输入URL后,从历览器缓存查找->本地hosts文件查找->本地DNS解析器缓存查找->本地DNS服务器查找,这个步骤中任意一步查到了都会直接返回结果。
如果本地DNS服务器也查不到,则根据本地DNS服务器设置的转发器进行查询。若未用转发模式,则迭代查找过程如下图:
建立TCP连接
首先判断是不是HTTPS(HTTP+SSL/TLS)协议,若是,服务端和客户端的信息传输都会通过TLS进行加密,所以传输的数据都是加密的数据。
发送HTTP请求,服务器处理请求,返回响应结果
TCP建立连接后,浏览器就可以利用HTTP/HTTPS协议向服务器发送请求。服务器接受到请求,处理请求返回响应。
关闭TCP连接
浏览器渲染
浏览器根据服务器返回的响应,渲染并显示界面。