(本来是想找个JAVA开发的,结果碰到个问了我数据结构和计算机网络的面试官,头大,现在做一个学习)
(原文转自 :http://igoro.com/archive/what-really-happens-when-you-navigate-to-a-url/ 中文翻译就不知道是哪位大神了)
PS:本文仅供个人学习总结。
- 用户输入一个新的网址,例如facebook.com
- 浏览器通过访问的域名查找其IP地址。
- 域名哪里来呢?通过DNS查找
- DNS查找包括: 1,系统缓存。2,路由器缓存。3.检查ISP缓存DNS的服务器,4,递归搜索 – 你的ISP的DNS服务器从跟域名服务器开始进行递归搜索,从.com顶级域名服务器到Facebook的域名服务器。一般DNS服务器的缓存中会有.com域名服务器中的域名,所以到顶级服务器的匹配过程不是那么必要了
(ISP服务,之前校园网冲突的时候(学校无法使用路由器,都是当作交换机用的,为了保证一人一网,),就要取消掉这个服务,原理不太懂,先记着。)PS:一个地址可以对应多个IP,举例来说,Facebook.com实际上就对应了四个IP地址。 - 浏览器给web服务器发送一个HTTP请求。
- web服务器的永久重定向响应
- 浏览器跟踪重定向地址
- 服务器处理请求
- 服务器返回一个HTML响应
- 浏览器开始显示HTML
- 浏览器发送获取嵌入在HTML中的对象(在浏览器显示HTML时,它会注意到需要获取其他地址内容的标签。这时,浏览器会发送一个获取请求来重新获得这些文件。比如内嵌的CSS和JS)