https://blog.csdn.net/androidstarjack/article/details/107031771 在浏览器输入URL回车之后发生了什么?(超详细版)   前言 这个问题已经是老生常谈了,更是经常被作为面试的压轴题出现,网上也有很多文章,但最近闲的无聊,然后就自己做了一篇笔记,感觉比之前理解更透彻了. 这篇笔记是我这两天看了数十篇文章总结出来的,所以相对全面一点,但由于我是做前端的,所以会比较重点分析浏览器渲染页面那一部分,至于其他部分我会罗列出关键词,感兴趣的可以自…
1.DNS 在浏览器中输入URL后,首先要进行DNS解析,DNS解析的顺序为: 浏览器缓存 本地hosts文件 系统缓存 路由器缓存 DNS服务器迭代查询 2.发送请求 通过DNS得到目标的IP地址后,通过TCP协议向服务器发送请求即三次握手. 3.服务器永久重定向响应 大多数的网站会将用户访问的地址永久重定向,这主要与缓存和搜索排名有关. 搜索排名方面:例如www.test.com与test.com搜索引擎认为是两个网站,不会将排名合并.如果使用重定向将test.com定向到www.test.…
在浏览器输入url后回车,整个过程发生了什么?整个过程如果节节细述的话,那非常的复杂.我就简单的描述一下整个过程 1.查询DNS,获取域名对应的IP地址 (1).浏览器搜索自身的DNS缓存 (2).搜索操作系统的DNS缓存 (3).读取本地的HOST文件 (4).发起一个DNS的系统调用 (4.1).宽带运营服务器查看本身缓存 (4.2).运营商服务器发起一个迭代DNS解析请求 2.浏览器获得域名对应的IP地址后,发起HTTP三次握手 3.TCP/IP连接建立起来后,浏览器就可以向服务器发送HT…
1.输入地址 当我们开始在浏览器中输入网址的时候,浏览器其实就已经在智能的匹配可能得 url 了,他会从历史记录,书签等地方,找到已经输入的字符串可能对应的 url,然后给出智能提示,让你可以补全url地址.对于 google的chrome 的浏览器,他甚至会直接从缓存中把网页展示出来,就是说,你还没有按下 enter,页面就出来了. 2.浏览器查找域名的 IP 地址 1.请求一旦发起,浏览器首先要做的事情就是解析这个域名,一般来说,浏览器会首先查看本地硬盘的 hosts 文件,看看其中有没有和…
在浏览器中输入url到显示网页主要包含两个部分: 网络通信和页面渲染 互联网内各网络设备间的通信都遵循TCP/IP协议,利用TCP/IP协议族进行网络通信时,会通过分层顺序与对方进行通信.分层由高到低分别为:应用层.传输层.网络层.数据链路层.发送端从应用层往下走,接收端从数据链路层网上走 1.浏览器的地址栏输入URL并按下回车 我们常见的RUL是这样的:www.baidu.com,域名通常由3部分组成:协议 域名 端口号 协议:主要是HTTP协议,HTTPS协议,FTP协议,FILe协议 域名…
原文链接:https://juejin.im/post/5bf23afa6fb9a049be5d1494 在浏览器中输入url到显示网页主要包含两个部分: 网络通信和页面渲染 互联网内各网络设备间的通信都遵循TCP/IP协议,利用TCP/IP协议族进行网络通信时,会通过分层顺序与对方进行通信.分层由高到低分别为:应用层.传输层.网络层.数据链路层.发送端从应用层往下走,接收端从数据链路层网上走 1.浏览器的地址栏输入URL并按下回车 我们常见的RUL是这样的:www.baidu.com,域名通常…
在直接列出执行的步骤之前先来普及几个知识,相信了解完这些知识之后会对前后端的交互有更深入的理解. 1.TCP连接 TCP:Transmission Control Protocol, 传输控制协议,是一种面向连接的.可靠的.基于字节流的传输层通信协议.说的这么专业,有啥用呢?先来举个栗子吧还记得小时候我们做的纸杯电话么?两个纸杯用一条绳子连到一起,两个各拿一个纸杯把线拉直,一个对着纸杯讲,一个用耳朵对着纸杯听. 这其实就是一种最简单的连接通信,两人通过一根线连接起来,声音从这边的纸杯发出通过线传…
在直接列出执行的步骤之前先来普及几个知识,相信了解完这些知识之后会对前后端的交互有更深入的理解. 1.TCP连接 TCP:Transmission Control Protocol, 传输控制协议,是一种面向连接的.可靠的.基于字节流的传输层通信协议.说的这么专业,有啥用呢?先来举个栗子吧还记得小时候我们做的纸杯电话么?两个纸杯用一条绳子连到一起,两个各拿一个纸杯把线拉直,一个对着纸杯讲,一个用耳朵对着纸杯听. 这其实就是一种最简单的连接通信,两人通过一根线连接起来,声音从这边的纸杯发出通过线传…
在浏览器中输入URL之后,浏览器会经历以下5个步骤: 1.解析URL 2.DNS域名解析 3.浏览器与网站建立TCP链接(三次握手) 4.请求和传输数据 5.浏览器渲染页面 一.解析URL 什么是url: URL(Universal Resource Locator) 同一资源定位符,俗称网页地址或者网址,用来表示某个网页资源的地址 URL主要由一下几个部分组成:1.传输协议 2.服务器 3.域名 4.端口 5.虚拟目录 6.文件名 7.参数 8.锚 也就是说通常的url是这样的 连起来就是这样…
一.在浏览器地址栏输入URL 二.浏览器查看缓存1.如果资源未缓存,发起新请求如果已缓存,检验是否处于有效期,资源处于有效期内直接提供给客户端,否则与服务器进行验证.2.检验有效期通常有两个HTTP头进行控制Expires和Cache-Control:(1)HTTP1.0提供Expires,值为一个绝对时间表示缓存有效期日期(2)HTTP1.1增加了Cache-Control: max-age=,值为以秒为单位的最大有效时间 三.浏览器解析URL获取协议,主机,端口,path 四.浏览器组装一个…