浏览器输入URL加载的全过程都发生了什么事情,你知道?
2024-08-30 02:32:19
什么是URL:
- 统一资源定位符(URL,英文 Uniform / Universal Reaource Locator 的缩写)
- 标准的URL由服务类型(协议)、存放资源的主机域名(可以是域名或者ip地址,可以包括端口号)、主机资源路径和文件名
eg:http://www.cnblogs.com/wyx8891/
协议部分:http
主机域名:www.cnblogs.com
资源路径:/wyx8891/
URL请求顺序:
- 当发送一个URL请求时,浏览器会开启一个线程来处理这个请求,对URL 分析判断如果是 http 协议就按照 Web 方式来处理
- 请求的URL交给DNS域名解析,使浏览器获得对应网址的IP地址
- 浏览器拿到IP后,会向服务器建立一个socket链接
- 浏览器通过TCP向服务器发送HTTP请求
- 浏览器接收HTTP响应并且可能关掉TCP连接,或者是重新使用连接处理新请求
- 浏览器检查HTTP响应是否为一个重定向(3xx 结果状态码 ),一个验证请求(401),错误(4xx 5xx)等等,这些都是不同响应的正常处理(2xx)
- 如果响应可缓存,响应将缓存在内存里
- 浏览器解码响应
- 浏览器决定如何处理这些响应(例如,它是HTML页面,一张图片,一段音乐)
- 浏览器展现响应,对未知类型还会弹出下载对话框。
概念解释:
- IP 地址:IP 协议为互联网上的每一个网络和每一台主机分配的一个逻辑地址。IP 地址如同门牌号码,通过 IP 地址才能确定一台主机位置。服务器也是一台主机,想要访问某个服务器,必须先知道它的 IP 地址;
- 域名(DN):IP 地址由四个数字组成,中间用点号连接,在使用过程中难记忆且易输入错误,所以用我们熟悉的字母和数字组合来代替纯数字的 IP 地址,比如我们只会记住 www.baidu.com(百度域名) 而不是 220.181.112.244(百度的其中一个 IP 地址);
- DNS: 每个域名都对应一个或多个提供相同服务服务器的 IP 地址,只有知道服务器 IP 地址才能建立连接,所以需要通过 DNS 把域名解析成一个 IP 地址。
- 协议:从该计算机获取资源的方式,常见的是Http、Ftp、Gopher、Telnet、File,不同协议有不同的通讯内容格式;资源路径指示从服务器上获取哪一项资源。
最新文章
- 你所不知道的setTimeout
- 动画在webapp中的现状
- 对Android开发者有益的40条优化建议
- COM学习笔记
- Golang学习 - unsafe 包
- Effective C++学习笔记 条款02:尽量以const,enum,inline替换 #define
- js中return false,return,return true的使用方法及区别
- EasyUI Combotree 只允许选择 叶子节点
- JavaScript推荐资料合集(前端必看)
- ue4打包问题的巧妙解决——二分回退大法!
- 使用Gitlab实现自动化部署与持续集成
- U3D GameObject 解读
- c# 检测是否有Sql非法字符
- Ng第十二课:支持向量机(Support Vector Machines)(二)
- .NET高级代码审计(第四课) JavaScriptSerializer反序列化漏洞
- H5类似易企秀/编辑器/页面制作/开发/生成工具/软件/源码/授权
- 测试Celery 在Windows中搭建和使用的版本
- Javascript Ajax异步读取RSS文档
- 用css让一个容器水平垂直居中
- canvas实现鼠标拖拽矩形移动改变大小
热门文章
- [Java第一课]环境变量的配置以及eclipse一些常用快捷键
- C#中的常识
- 18个超有趣的SVG绘制动画赏析
- linux makefile 编译多个.c文件 实例
- cocos-Lua中的class与require机制
- HDU 6143 Killer Names
- Life is a Line
- Python基础学习参考(三):内置函数
- CentOS6.8通过yum安装MySQL5.7
- ssh分发秘钥时出现错误“Permission denied (publickey,gssapi-keyex,gssapi-with-mic)”