在浏览器地址栏输入url后,发生的事情

1、浏览器查找域名的IP地址

导航的第一步是通过访问域名找出其IP地址。DNS查找过程如下:

  • 浏览器缓存——浏览器会缓存DNS记录一段时间(2分钟到30分钟不等并由浏览器决定)。
  • 系统缓存——如果浏览器缓存里没有找到需要的记录,浏览器会做一个系统调用。
  • 路由器缓存—接着,前面的查询请求发向路由器,它一般会有自己的DNS缓存。
  • ISP DNS缓存——接下来要检查的是ISP缓存DNS的服务器。在这里一般都能找到相应的缓存记录。
  • 递归搜索——你的ISP的DNS服务器从根域名服务器开始进行递归搜索(顶级域名服务器到一般DNS服务器)

备注:一下方法可以消除这个瓶颈:循环DNS(DNS查找时返回多个IP时的解决方案。举例来说,Facebook.com实际上就对应了四个IP地址。

     负载平衡器(以一个特定IP地址侦听并将网络请求转发到群服务器上的硬件设备)

                                                    地理DNS根据用户所处的地理位置,通过吧域名映射到多个不同的IP地址提高可扩展性。

2、浏览器给web服务器发送一个HTTP请求

GET  http://facebook.com/   HTTP/1.1

Accept:  application/x-ms-application,image/jpeg

User-Agent:Mozilla/4.0

Accept-Encoding:gzip,deflate

Connection:Keep-Alive

Host:facebook.com

3、如果是大型服务器发送永久重定向响应

HTTP/1.1 301 Moved Permanently

Cache-Control:private,no-store,on-cache

Expires:Sat,01 jan 2000

location:http://www.facebook.com

4、浏览器跟踪重定向地址

现在,浏览器知道了“http://  ”,在发送另外一个请求。

5、服务器“处理”请求

服务器接收到获取请求,然后处理并返回一个响应。表面上看起来是一个顺利的任务,但中间发生了很多有意思的东西:

a、WEB服务器软件

web服务器软件(IIS、Apache、……)接收到HTTP请求,然后确定执行什么请求处理来处理它。请求处理时一个能够读懂请求并且能生成HTML来进行相应的程序

b、请求处理

请求处理阅读请求及它的参数和cookies。它会读取也可能更新一些数据,并将数据存储在服务器上。然后,处理会生成一个HTML响应。

6、服务器发回一个HTML响应

HTTP/1.1 200 OK

Cache-Control:private,no-store……

……

<Doctype!>

7、浏览器开始显示HTML

在浏览器没有完整接收全部HTML文档时,它就开始显示这个页面了


8、浏览器发送获取嵌入在HTML中的对象

图片、css样表、javascript文件

9、浏览器发送异步(AJAX)请求




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值