24、固若金汤的根本(上):对称加密与非对称加密

在上一讲中,我们初步学习了HTTPS,知道HTTPS的安全性是由TLS来保证的。 你一定很好奇,它是怎么为HTTP增加了机密性、完整性,身份认证和不可否认等特性的呢? 先说说机密性。它是信息安全的基础,缺乏机密性TLS就会成为“无水之源”“无根之木”...

透视HTTP协议

23、HTTPS是什么SSL,TLS又是什么

从今天开始,我们开始进入全新的“安全篇”,聊聊与安全相关的HTTPS、SSL、TLS。 在[第14讲]中,我曾经谈到过HTTP的一些缺点,其中的“无状态”在加入Cookie后得到了解决,而另两个缺点——“明文”和“不安全”仅凭HTTP自身是无力解决的...

透视HTTP协议

22、HTTP的缓存代理

在[第20讲]中,我介绍了HTTP的缓存控制,[第21讲]我介绍了HTTP的代理服务。那么,把这两者结合起来就是这节课所要说的“缓存代理”,也就是支持缓存控制的代理服务。 之前谈到缓存时,主要讲了客户端(浏览器)上的缓存控制,它能够减少响应时间、节约...

透视HTTP协议

21、HTTP的代理服务

在前面讲HTTP协议的时候,我们严格遵循了HTTP的“请求-应答”模型,协议中只有两个互相通信的角色,分别是“请求方”浏览器(客户端)和“应答方”服务器。 今天,我们要在这个模型里引入一个新的角色,那就是HTTP代理。 引入HTTP代理后,原来简单的...

透视HTTP协议

20、HTTP的缓存控制

缓存(Cache)是计算机领域里的一个重要概念,是优化系统性能的利器。 由于链路漫长,网络时延不可控,浏览器使用HTTP获取资源的成本较高。所以,非常有必要把“来之不易”的数据缓存起来,下次再请求的时候尽可能地复用。这样,就可以避免多次请求-应答的通...

透视HTTP协议

19、HTTP的Cookie机制

在之前的[第13讲]、[第14讲]中,我曾经说过,HTTP是“无状态”的,这既是优点也是缺点。优点是服务器没有状态差异,可以很容易地组成集群,而缺点就是无法支持需要记录状态的事务操作。 好在HTTP协议是可扩展的,后来发明的Cookie技术,给HTT...

透视HTTP协议

18、HTTP的重定向和跳转

在专栏[第1讲]时我曾经说过,为了实现在互联网上构建超链接文档系统的设想,蒂姆·伯纳斯-李发明了万维网,使用HTTP协议传输“超文本”,让全世界的人都能够自由地共享信息。 “超文本”里含有“超链接”,可以从一个“超文本”跳跃到另一个“超文本”,对线性...

透视HTTP协议

17、HTTP的连接管理

在[第14讲]里,我曾经提到过HTTP的性能问题,用了六个字来概括:“不算差,不够好”。同时,我也谈到了“队头阻塞”,但由于时间的限制没有展开来细讲,这次就来好好地看看HTTP在连接这方面的表现。 HTTP的连接管理也算得上是个“老生常谈”的话题了,...

透视HTTP协议

16、HTTP传输大文件的方法

上次我们谈到了HTTP报文里的body,知道了HTTP可以传输很多种类的数据,不仅是文本,也能传输图片、音频和视频。 早期互联网上传输的基本上都是只有几K大小的文本和小图片,现在的情况则大有不同。网页里包含的信息实在是太多了,随随便便一个主页HTML...

透视HTTP协议

15、HTTP的实体数据

你好,我是Chrono。 今天我要与你分享的话题是“海纳百川:HTTP的实体数据”。 这一讲是“进阶篇”的第一讲,从今天开始,我会用连续的8讲的篇幅来详细解析HTTP协议里的各种头字段,包括定义、功能、使用方式、注意事项等等。学完了这些课程,你就可以...

透视HTTP协议