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

URL是什么?

统一资源定位符,用于定位互联网上的资源。
协议 +域名+端口号
https是一个安全的http协议是经过加密的。
//两个斜杠代表 :与当前的页面的协议保持一致

地址栏输入到页面展示的过程

  1. 域名解析

    • 协议+域名+端口号+其他
    • 协议:告诉浏览器如何处理将要打开的文件
    • 域名具有语义化,方便记忆。域名最终会解析成IP。解析流程
      • 浏览器缓存 – 浏览器会缓存DNS记录一段时间
      • 系统缓存 - 从 Hosts 文件查找是否有该域名和对应 IP。
      • 路由器缓存 – 一般路由器也会缓存域名信息。
      • ISP DNS 缓存 – 比如到电信的 DNS 上查找缓存。
      • 如果都没有找到,则向根域名服务器查找域名对应 IP,根域名服务器把请求转发到下一级,知道找到 IP
    • 端口是不写默认80
  2. 服务器处理

    • 服务器就是一台安装系统的机器。如linux
    • 服务器处理请求的应用是web service,常用到有 tomcat 、nginx、apache等。
    • web service 用于接受用户请求,返回数据、或者反向代理到其他web service。
    • 会涉及到网站处理流程,包括经典的mvc模型等
    • 服务器生成并返回响应
  3. 浏览器处理

    • 浏览器并不是一次请求将页面所有内容都获取到的
    • html字符串被浏览器接受并一句句解析,遇到link,就发请求获得css;遇到script发请求获得js;遇到img就发请求获取图片;
      在这个过程中请求是多次的,以后考虑到前端性能问题可以针对性的优化。比如合并,压缩,小图标的话可以放在一个矢量图,通过css样式来控制等。
  4. 绘制网页

    • 浏览器下载完页面的所有内容---html、javascript、css、图片之后会解析并生成页面结构(dom树)和渲染树(如何显示),一旦构建完成就会绘制页面元素,js会被执行。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容