URL是什么?
统一资源定位符,用于定位互联网上的资源。
协议 +域名+端口号
https是一个安全的http协议是经过加密的。
//两个斜杠代表 :与当前的页面的协议保持一致
地址栏输入到页面展示的过程
-
域名解析
- 协议+域名+端口号+其他
- 协议:告诉浏览器如何处理将要打开的文件
- 域名具有语义化,方便记忆。域名最终会解析成IP。解析流程
- 浏览器缓存 – 浏览器会缓存DNS记录一段时间
- 系统缓存 - 从 Hosts 文件查找是否有该域名和对应 IP。
- 路由器缓存 – 一般路由器也会缓存域名信息。
- ISP DNS 缓存 – 比如到电信的 DNS 上查找缓存。
- 如果都没有找到,则向根域名服务器查找域名对应 IP,根域名服务器把请求转发到下一级,知道找到 IP
- 端口是不写默认80
-
服务器处理
- 服务器就是一台安装系统的机器。如linux
- 服务器处理请求的应用是web service,常用到有 tomcat 、nginx、apache等。
- web service 用于接受用户请求,返回数据、或者反向代理到其他web service。
- 会涉及到网站处理流程,包括经典的mvc模型等
- 服务器生成并返回响应
-
浏览器处理
- 浏览器并不是一次请求将页面所有内容都获取到的
- html字符串被浏览器接受并一句句解析,遇到link,就发请求获得css;遇到script发请求获得js;遇到img就发请求获取图片;
在这个过程中请求是多次的,以后考虑到前端性能问题可以针对性的优化。比如合并,压缩,小图标的话可以放在一个矢量图,通过css样式来控制等。
-
绘制网页
- 浏览器下载完页面的所有内容---html、javascript、css、图片之后会解析并生成页面结构(dom树)和渲染树(如何显示),一旦构建完成就会绘制页面元素,js会被执行。