作家
登录

从URL输入到页面展现到底发生什么?

作者: 来源: 2017-09-22 14:20:16 阅读 我要评论

一、URL到底是啥

【沙龙】51CTO诚邀您9月23号和多位技巧大年夜咖一路聊智能CDN的优化之路,抓紧时光哦!


媒介

打开浏览器大年夜输入网址到网面涌如今大年夜家面前,背后到底产生了什么?经历怎么样的一个过程?这是本文要商量的问题!

URL(Uniform Resource Locator),同一资本定位符,用于定位互联网上资本,俗称网址。

比如 http://www.w3school.com.cn/html/index.asp,遵守以下的语律例则:scheme://host.domain:port/path/filename

解释:

  • scheme - 定义因特网办事的类型。常见的协定有http、https、ftp、file,个中最常见的类型是 http,而https则是进行加密的收集传输。
  • host - 定义域主机(http 的默认主机是 www)
  • domain - 定义因特网域名,比如 w3school.com.cn
  • :port - 定义主机上的端标语(http 的默认端标语是 80)
  • path - 定义办事器上的路径(如不雅省略,则文档必须位于网站的根目次中)。
  • filename - 定义文档/资本的名称

二、域名解析(DNS)

在浏览器输入网址后,起重要经由域名解析,因为浏览器并不克不及辨认域名,须要经由过程域名直接找到响应的IP地址,大年夜家这里或许会有个疑问----为啥要设置域名,不如一开端就给个IP地址,如许可以省去很多麻烦。

我们先来懂得下什么是IP地址


MVC.png

IP地址是指互联网协定地址,是IP Address的缩写。IP地址是IP协定供给的一种同一的地址格局,它为互联网上的每一个收集和每一台主机分派一个逻辑地址,以词攀来樊篱物理地址的差别。IP地址是一个32位的二进制数,比如127.0.0.1为本机IP;如不雅每个网址都是一串数字,那就不便于记忆!

域名就相当于IP地址乔装打扮的假装者,带着一副面具。它的感化就是便于记忆和沟通的一组办事器的地址。但如许有时刻会带来一种风险----DNS劫持,就是使域名对应的不再是本来对应的IP,其效不雅就是对特定的收集不克不及拜访或拜访的是假网址,又难于被用户发觉,曾导致巴西最大年夜银行巴西银行近1%客户受到进击而导致账户被盗。

域名解析流程

  • 浏览器缓存:如不雅在之前对该url指定的主机进行过拜访,浏览器会缓存该主机的IP一段时光(该时光浏览器指定),然后经由过程该IP地址找到对应主机;
  • 体系缓存:若浏览器中无该缓存,那么就到体系缓存中进行萌芽,浏览器会进行体系调用,萌芽缓存;
  • 路由器缓存:如不雅体系缓存中也没有,那么就到路由器缓存中进行萌芽;
  • ISP DNS 缓存:如不雅路由器缓存依旧未射中,那么就到ISP DNS中萌芽,一般的域名都能在这琅绫侨芽获得;
  • 递归搜刮:如不雅以上都没有萌芽到,那么就会到顶级域名办事器的根办事器中进行递归萌芽,只要该域名存在就肯定能找获得。

经由过程域名解析查找到对应的IP地址之后,经由过程IP地址查找到对应的办事器,浏览器将用户提议的http请求发送给办事器。下一步就到了办事器处理阶段的工作。

三、办事器处理响应请求

办事器

视图是用户看参预与之交互的界面。

办事器是收集情况中的高机能计算机,它侦听收集上的其他计算机(客户机)提交的办事请求,并供给响应的办事,比如网页办事、文件下载办事、邮件办事、视频办事。而客户端重要的功能是浏览网页、看视频、听音乐等等,两者截然不合。 每台办事器上都邑安装处理请求的应用——web server。常见的web server产品有apache、nginx、IIS或Lighttpd等。

web server 担负管控的角色,对于不合用户发送的请求,会结合设备文件,把不合请求宛转给办事器上处理响应请求的法度榜样进行处理(例如CGI脚本,JSP脚本,servlets,ASP脚本,办事器端JavaScript,或者一些其它的办事器端技巧等),然后返回后台法度榜样处理产生的结不雅作为响应。

大年夜URL输入到页面展示到底产生什么?
办事器和客户端差别

四、网站处理阶段

MVC是一个设计模式,将应用法度榜样分成三个核心部件:模型(model)-- 视图(view)--控制器(controller),它们各自处理本身的义务,实现输入、处理和输出的分别。

1、视图(view)

模型表示企业数据和营业规矩。在MVC的三个部件中,模型拥有最多的处理义务。一个模型能为多个视图供给数据。

2、模型(model)

3、控制器(controller)

大年夜URL输入到页面展示到底产生什么?

控制寡居收用户的输入并调用模型和视图去完采取户的需求。控制器属于治理者角色,大年夜视图接收请求并决定调用哪个模型构件去处理请求,然后再肯定用哪个视图来显示模型处理返回的数据。

总结而言,起首控制器接收用户的请求,并决定应当调用哪个模型来进行处理,然后模型用营业逻辑来处理用户的请求并返回数据,最后控制器用响应的视图格局化模型返回HTML字符串给浏览器,浏览器出现网页给用户。是以,下一步就来到浏览器处理阶段。

网站处理,就是实际后台处理的工作。后台开辟明在有很多框架,但大年夜部分都照样按照MVC设计模式进行搭建的。

五、浏览器的处理

浏览器拿到响应文本HTML后,以chrome浏览器为例,介绍下浏览器衬着机制

chrome浏览器衬着机制

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)