一,输入URL(统一资源定位符)
输入baidu.com
二, 域名解析
浏览器缓存——浏览器有百度DNS则会缓存DNS,若没有转至下面。
系统缓存——从Host文件中查找对应的百度域名和IP,若没有转至下面。
路由器缓存——路由器也会缓存部分DNS,查找是否有百度域名和IP。
ISP DNS 缓存——例如电信的DNS缓存。
以上都没有的情况则向根域名服务器查域名对应IP,根域名服务器将请求转至下一级,直至找到IP。
(DNS 劫持:指的是给了一个假IP但域名却是一样的。)
三,服务器处理
服务器指的是安装系统的机器。web服务器接受用户的请求,并交给网站代码。
四,网站处理
模型(model)——视图(view)——控制器(control)
MVC结构
五,浏览器处理
HTML字符串被浏览器接受后被一句句读取解析:
解析到link 标签后重新发送请求获取css
解析到 script标签后发送请求获取 js,并执行代码
解析到img 标签后发送请求获取图片资源
六,绘制网页
浏览器根据 HTML 和 CSS 计算得到渲染树,绘制到屏幕上js 会被执行
作者:徐金俊
链接:https://www.jianshu.com/p/5822e8f0faf2