不出意外的话,现如今大多数人的工作都离不开电脑,所以我们每天必做的就是打开浏览器,输入URL,然后等待网页加载处理,再继续接下来的工作。
但是,在我们输入URL到网页加载出来,中间到底发生了什么呢?
一般是经历下面一些过程:
1.在浏览器里输入网址
2.通过访问的域名找出IP地址,DNS查找过程如下:
(1)浏览器缓存---浏览器会缓存DNS记录一段时间,不同浏览器保存的时间不同。
(2)系统缓存---如果在浏览器缓存中找不到记录,浏览器会做一个系统调用(gethostbyname)获取系统中缓存记录
(3)路由器缓存--第二步的查询请求发给路由器,路由器一般有自己的DNS缓存
(4)ISP DNS缓存--上述步骤都失败的话就会搜索ISP
3.浏览器和服务器连接并且发送HTTP请求
4.网站服务的永久重定向响应
5.浏览器跟踪重定向地址
6.服务器返回一个HTML响应
7.在未完整接受全部HTML文档也可以显示(浏览器显示HTML)
8.浏览器发送获取嵌入在HTML中的对象(比如说HTTML上的图片之类的,发送请求重新获得文件)
9.生成Dom树、解析css样式、js交互
10.浏览器发送异步(AJAX)请求