HTTP协议的诞生
下面提到的HTML,是做网页用的语言,你可以在电脑上用浏览器随便访问一个网站,如访问https://www.baidu.com,按下F12键,就可以看到这个网页的HTML语言了。
例如:
一、为知识共享而规划Web
1989年3月,互联网还只属于少数人。在这一互联网的黎明期,HTTP诞生了。
CERN(欧洲核子研究组织)的蒂姆·伯纳斯·李(Tim BernerLee)博士提出了一种能让远隔两地的研究者们共享知识的设想。
最初设想的基本理念是:借助多文档之间相互关联形成的超文本(HyperText),连成可相互参阅的WWW(World Wide Web,万维网)。
现在已提出了3项WWW构建技术,分别是:
1、把SGML(Standard Generalized Markup Language,标准通用标记语言)作为页面的文本标记语言的HTML(HyperText Markup Language,超文本标记语言)。
2、作为文档传递协议的HTTP。
3、指定文档所在地址的URL(Uniform Resource Locator,统一资源定位符)。
WWW这一名称,是Web浏览器当年用来浏览超文本的客户端应用程序时的名称。现在则用来表示这一系列的集合,也可简称为Web。
二、Web成长时代
1990年11月,CERN成功研发了世界上第一台Web服务器和Web浏览器。两年后的1992年9月,日本第一个网站的主页上线了。
日本第一个主页:
http://www.ibarakiken.gr.jp/www/
1990年,大家针对 HTML 1.0 草案进行了讨论,因 HTML 1.0 中存在多处模糊不清的部分,草案被直接废弃了。
HTML 1.0:
http://www.w3.org/MarkUp/draft-ietf-iiir-html-01.txt
1993年1月,现在浏览器的祖先NCSA(National Center for Supercomputer Applications,美国国家超级计算机应用中心)研发的Mosaic问世了。它以in-line(内联)等形式显示HTML的图像,在图像方面出色的表现使它迅速在世界范围内流行开来。
同年秋天,Mosaic的Windows版和Mac版问世。使用CGI技术的NCSA Web服务器、NCSA HTTPd 1.0 也差不多是在这个时期出现的。
NCSA Mosaic bounce page:
http://archive.ncsa.illinois.edu/mosaic.html
The NCSA HTTPd Home Page:
http://web.archive.org/web/20090426182129/http://hoohoo.ncsa.illino
1994年12月,网景通信公司发布了Netscape Navigator 1.0。
1995年微软公司发布 Internet Exporer(即IE浏览器)1.0 和 2.0。
紧随其后的是现在已然成为Web服务器标准之一的Apache,当时它以Apache 0.2的姿态出现在世人眼前。而HTML也发布了2.0版本。那一年,Web技术的发展突飞猛进。
从1995年起,微软公司与网景通信公司之间爆发的浏览器大战愈演愈烈。而两家公司都各自对HTML做了扩展,于是导致在写HTML页面时,必须考虑兼容他们两家公司的浏览器。
在这场浏览器供应商之间的竞争中,他们不仅对当时发展中的各种Web标准化视而不见,还屡次出现新增功能而没有对应说明文档的情况。
2000年前后,这场浏览器战争随着网景通信公司的衰落而暂告一段路。但就在2004年,Mozilla基金会发布了Firefox浏览器,第二次浏览器大战随即爆发。
微软的IE浏览器的版本从6升到7,花了5年时间。之后接连不断地发布了8、9、10版本。另外,Chrome(谷歌)、Opera(已被360收购)、Safari(苹果)等浏览器也纷纷抢占市场份额。
三、驻足不前的HTTP
HTTP/0.9
HTTP于1990年问世。那时的HTTP并没有作为正式的标准被建立。现在的HTTP其实含有HTTP 1.0 之前版本的意思,因为被称为HTTP/0.9。
HTTP/1.0
HTTP正式作为标准被公布是在1996年5月,版本被命名为 HTTP/1.0 ,并记载于RFC1945(请求意见稿(Request for Comments,缩写:RFC)是由互联网工程任务组(IETF)发布的一系列备忘录)。虽说是初期标准,但该协议至今仍被广泛使用在服务器端。
RFC1945 - HyperText Transfer Protocol -- HTTP/1.0
http://www.ietf.org/rfc/rfc1945.txt
HTTP/1.1
1997年1月公布的HTTP/1.1是目前主流的HTTP协议版本。当初的标准是RFC2068,之后发布的修订版RFC2616就是当前的最新版本。
RFC2616 - HyperText Transfer Protocol -- HTTP/1.1
http://www.ietf.org/rfc/rfc2616.txt
可见,作为Web文档传输协议的HTTP,它的版本几乎没有更新。新一代HTTP/2.0正在制订中,但要达到较高的实用覆盖率,仍需要时间。
当年HTTP协议的出现主要是为了解决文本传输的难题。由于协议本身非常简单,于是在此基础上设想了很多应用方法并投入了实际使用。现在HTTP协议已经超出了Web这个框架的局限,被运用到了各种场景里。