在浏览器中输入一个网址后,发生了什么?

这是面试中一道非常经典的问题。当你在浏览器中输入一个网址,浏览器的处理过程如下:第一步 浏览器查找该域名的 IP 地址第二步 浏览器根据解析得到的IP地址向 web 服务器发送一个 HTTP 请求第三步 服务器收到请求并进行处理第四步 服务器返回一个响应第五步 浏览器对该响应进行解码,渲染显示。第六步 页面显示完成后,浏览器发送异步请求。复制代码下面对每个环节做进一步分析:01...
摘要由CSDN通过智能技术生成

这是面试中一道非常经典的问题。

当你在浏览器中输入一个网址,浏览器的处理过程如下:

第一步 浏览器查找该域名的 IP 地址

第二步 浏览器根据解析得到的IP地址向 web 服务器发送一个 HTTP 请求

第三步 服务器收到请求并进行处理

第四步 服务器返回一个响应

第五步 浏览器对该响应进行解码,渲染显示。

第六步 页面显示完成后,浏览器发送异步请求。
复制代码
下面对每个环节做进一步分析:

01 浏览器查找该域名的 IP 地址

浏览器缓存 首先是查找浏览器缓存,浏览器会缓存DNS记录一段时间,不同浏览器保存的时常不等(2分钟到30分钟不等)。

系统缓存 如果在浏览器缓存里没有找到需要的记录,浏览器会做一个系统调用来查找这个网址的对应DNS信息。

路由器缓存 如果在系统缓存里没有找到找到对应的IP,请求会发向路由器,它一般会有自己的DNS缓存。

ISP DNS服务器 如果在路由器缓存里还是没有对应的IP,请求会被发送到ISP。

根域名服务器 如果还是没有,请求将发向根域名服务器进行搜索。找不到就说明此域名不存在。

02 浏览器根据解析得到的IP地址向 web 服务器发送一个 HTTP 请求

可能会重定向响应

   例如“http://facebook.com/”,服务器会给浏览器响应一个301永久重定向响应,这样浏览器就会访问“http://www.facebook.com/” 而非“http://facebook.com/”。

服务器重定向的原因有很多,举其中两个

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值