从URL输入到页面展现

打开浏览器,输入 baidu.com,页面展示百度首页。整个过程发生了什么?

一,输入URL(统一资源定位符)

输入baidu.com

二, 域名解析

浏览器缓存——浏览器有百度DNS则会缓存DNS,若没有转至下面。

系统缓存——从Host文件中查找对应的百度域名和IP,若没有转至下面。

路由器缓存——路由器也会缓存部分DNS,查找是否有百度域名和IP。

ISP DNS 缓存——例如电信的DNS缓存。

以上都没有的情况则向根域名服务器查域名对应IP,根域名服务器将请求转至下一级,直至找到IP。

(DNS 劫持:指的是给了一个假IP但域名却是一样的。)

三,服务器处理

服务器指的是安装系统的机器。web服务器接受用户的请求,并交给网站代码。

四,网站处理

模型(model)——视图(view)——控制器(control)

image

MVC结构

五,浏览器处理

HTML字符串被浏览器接受后被一句句读取解析:

解析到link 标签后重新发送请求获取css

解析到 script标签后发送请求获取 js,并执行代码

解析到img 标签后发送请求获取图片资源

六,绘制网页

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

你可能感兴趣的:(从URL输入到页面展现)