目录
4.1 HTTP+ 通信加密 + 证书 + 完整性保护 =HTTPS
前言:
当我们在网页浏览器的地址栏中输入 URL(统一资源定位符) 时,Web 页面是如何呈现的?
Web 页面当然不能凭空显示出来。根据 Web 浏览器地址栏中指定的 URL,Web 浏览器从 Web 服务器端获取文件资源(resource)等信 息,从而显示出 Web 页面。
WWW (简称为 Web)构建技术,分别是:
1.把 SGML(Standard Generalized Markup Language,标准通用标记语言)作为页面的文本标 记语言的 HTML(HyperText Markup Language,超文本标记语言);
2.作为文档传递协议的 HTTP ;
3.指定文档所在地址的 URL(Uniform 12 Resource Locator,统一资源定位符)。
1.超文本传输协议
Web 使用一种名为 HTTP(HyperText Transfer Protocol,超文本传输协议(严谨的译名应该为“超文本转移协议”。)的协议作为规范,完成从客户端到服务器端等一系列运作流程。而协议是指规则的约定。可以说,Web 是建立在 HTTP 协议上通信的。
超文本
所谓“文本”(Text),就表示 HTTP 传输的不是 TCP/UDP 这些底层协议里被切分的杂乱无章的二进制包(datagram),而是完整的、有意义的数据,可以被浏览器、服务器这样的上层应用程序处理。比如:字符文字、图片、音频、视频、甚至是压缩包。
所谓“超文本”,就是“超越了普通文本的文本”,它是文字、图片、音频和视频等的混合体,最关键的是含有“超链接”,能够从一个“超文本”跳跃到另一个“超文本”,形成复杂的非线性、网状的结构关系。
HTML 就是最常见的超文本了,它本身只是纯文字文件,但内部用很多标签定义了图片、视频等的链接,在经过浏览器的解释,呈现给我们的就是一个文字、有画面的网页了。
传输
HTTP 是一个“传输协议”
我们在上网冲浪时,浏览器是请求方 A ,百度网站就是应答方 B。双方约定用 HTTP 协议来通信,于是浏览器把请求数据发送给网站,网站再把一些数据返回给浏览器,最后由浏览器渲染在屏幕,就可以看到图片、视频了。所以HTTP协议是一个双向协议
数据虽然是在 A 和 B 之间传输,但并没有限制只有 A 和 B 这两个角色,允许中间有“中转”或者“接力”。比如:传输方式从“A<===>B”,变成了“A<=>X<=>Y<=>Z<=>B”
所以,HTTP 是一个在计算机世界里专门用来在两点之间传输数据的约定和规范。
协议
计算机与网络设备要相互通信,双方就必须基于相同的方法。比如, 如何探测到通信目标、由哪一边先发起通信、使用哪种语言进行通信、怎样结束通信等规则都需要事先确定。不同的硬件、操作系统之 间的通信,所有的这一切都需要一种规则。而我们就把这种规则称为协议
HTTP 是一个用在计算机世界里的协议。它使用计算机能够理解的语言确立了一种计算机之间交流通信的规范(两个以上的参与者),以及相关的各种控制和错误处理方式(行为约定和规范)。
有了以上三层理解,再次回答HTTP是什么时,就能够给出更有技术含量的答案了:“HTTP 是一个在计算机世界里专门在两点之间传输文字、图片、音频、视频等超文本数据的约定和规范”。
2.与HTTP相关的协议
为了理解 HTTP,我们有必要事先了解一下 TCP/IP 协议族
通常使用的网络(包括互联网)是在 TCP/IP 协议族的基础上运作的。而 HTTP 属于它内部的一个子集
像这样把与互联网相关联的协议集合起来总称为 TCP/IP。也有说法认为,TCP/IP 是指 TCP 和 IP 这两种协议。还有一种说法认为,TCP/ IP 是在 IP 协议的通信过程中,使用到的协议族的统称。
2.1 网络基础 TCP/IP
TCP/IP 协议族里重要的一点就是分层。TCP/IP 协议族按层次分别分为以下4