美文网首页饥人谷技术博客
从URL输入到页面展现的过程

从URL输入到页面展现的过程

作者: 飘飘流浪者 | 来源:发表于2017-03-31 11:18 被阅读0次

    当我们在浏览器输入一个URL,到浏览器展现给我们想要的页面并可以操作,这其中大致经历了6个步骤

    1. 在浏览器输入URL
    2. 域名解析
    3. 服务器处理
    4. 网站处理
    5.浏览器处理
    6. 绘制网页

    1. 输入URL

    URL,即Uniform Resource Locator,统一资源定位符,顾名思义,其为可定位互联网上资源的地址符号。URL的基本元素有:传输协议、域名、端口号等。常用的传输协议有:

    • HTTP(hyper text transport protocol):超文本传输协议。
    • FILE:本地文件传输协议。是从用户自己计算机上获取文件的一种方法.
    • FTP(file transfer protocol):文件传输协议。它是为用户与文件服务器之间进行相互传输文件服务的。
    • HTTPS(Hyper Text Transfer Protocol over Secure Socket Layer):数据经过加密的超文本传输协议
    若开头仅有//,则表示该URL协议与当前页面一致。

    2. 域名解析

    IP(Internet Protocol):即网络之间互联的协议。对于我们输入的URL,浏览器并不知道是什么,需要查找其所在IP地址才能找到目标。

    每个处于互联网中的设备都有IP 地址,形如 192.168.0.1。
    公网IP:是由国际互联网分配的唯一的IP地址,是个静态IP地址。
    局域网IP:由路由器建立子网分配IP地址。

    域名:由于IP字符不便于记忆和输入,所以通常设置一个域名与IP相对应,例如google的域名为:google.com。

    域名解析的流程:

    1. 浏览器缓存 – 浏览器会缓存DNS记录一段时间
    2. 系统缓存 - 从 Hosts 文件查找是否有该域名和对应 IP。
    3. 路由器缓存 – 一般路由器也会缓存域名信息。
    4. ISP DNS 缓存 – 比如到电信的 DNS 上查找缓存。
    5. 如果都没有找到,则向根域名服务器查找域名对应 IP,根域名服务器把请求转发到下一级,知道找到 IP

    3. 服务器处理

    服务器是一台安装系统的机器,常见的系统如Linux、windows server 2012
    系统里安装的处理请求的应用叫 Web server
    常见的 web服务器有 Apache、Nginx、IIS、Lighttpd
    web服务器接收用户的Request 交给网站代码,或者接受请求反向代理到其他 web服务器

    4. 网站处理

    网站处理遵循MVC流程,即模型(model)-视图(view)-控制器(controller)

    • 模型(model): 将开发中的业务规则和数据格式进行模型化,可以被多个视图重用。
    • 视图(view): 用户看到并与之交互的界面。这也是前端的主要工作范围。
    • 控制器(controller): 从视图接收请求并决定调用哪个模型去处理请求,并确定用哪个视图来显示模型处理返回的数据。最后返回HTML字符串给浏览器。

    5. 浏览器处理

    HTML字符串被浏览器接受后被一句句读取解析
    解析到link 标签后重新发送请求获取css
    解析到 script标签后发送请求获取 js,并执行代码
    解析到img 标签后发送请求获取图片资源

    6. 绘制网页

    浏览器根据 HTML 和 CSS 计算得到渲染树,绘制到屏幕上
    js 会被执行

    相关文章

      网友评论

        本文标题:从URL输入到页面展现的过程

        本文链接:https://www.haomeiwen.com/subject/ebimottx.html