浏览器输入URL加载的全过程都发生了什么事情,你知道?

什么是URL:

  1. 统一资源定位符(URL,英文 Uniform / Universal Reaource Locator 的缩写)
  2. 标准的URL由服务类型(协议)、存放资源的主机域名(可以是域名或者ip地址,可以包括端口号)、主机资源路径和文件名

eg:http://www.cnblogs.com/wyx8891/

协议部分:http

主机域名:www.cnblogs.com

资源路径:/wyx8891/

URL请求顺序:

  1. 当发送一个URL请求时,浏览器会开启一个线程来处理这个请求,对URL 分析判断如果是 http 协议就按照 Web 方式来处理
  2. 请求的URL交给DNS域名解析,使浏览器获得对应网址的IP地址
  3. 浏览器拿到IP后,会向服务器建立一个socket链接
  4. 浏览器通过TCP向服务器发送HTTP请求
  5. 浏览器接收HTTP响应并且可能关掉TCP连接,或者是重新使用连接处理新请求
  6. 浏览器检查HTTP响应是否为一个重定向(3xx 结果状态码 ),一个验证请求(401),错误(4xx 5xx)等等,这些都是不同响应的正常处理(2xx)
  7. 如果响应可缓存,响应将缓存在内存里
  8. 浏览器解码响应
  9. 浏览器决定如何处理这些响应(例如,它是HTML页面,一张图片,一段音乐)
  10. 浏览器展现响应,对未知类型还会弹出下载对话框。

概念解释

  • IP 地址:IP 协议为互联网上的每一个网络和每一台主机分配的一个逻辑地址。IP 地址如同门牌号码,通过 IP 地址才能确定一台主机位置。服务器也是一台主机,想要访问某个服务器,必须先知道它的 IP 地址;
  • 域名(DN):IP 地址由四个数字组成,中间用点号连接,在使用过程中难记忆且易输入错误,所以用我们熟悉的字母和数字组合来代替纯数字的 IP 地址,比如我们只会记住 www.baidu.com(百度域名) 而不是 220.181.112.244(百度的其中一个 IP 地址);
  • DNS: 每个域名都对应一个或多个提供相同服务服务器的 IP 地址,只有知道服务器 IP 地址才能建立连接,所以需要通过 DNS 把域名解析成一个 IP 地址。
  • 协议:从该计算机获取资源的方式,常见的是Http、Ftp、Gopher、Telnet、File,不同协议有不同的通讯内容格式;资源路径指示从服务器上获取哪一项资源。
上一篇:Linux下nc命来实现文件传输


下一篇:HDU 1248 寒冰王座(完全背包裸题)