1.1 HTML 的历史

如今,几乎所有人都使用互联网。阅读文章、使用浏览器、关注链接。他们中只有少数人想知道互联网是何时以及由谁发明的?

这仍然取决于您对互联网的称呼。大多数情况下,外行意味着一回事,而技术人员意味着另一回事。连接世界上最大的数据中心的计算机网络创建于 70 年代。但是普通人可以访问的互联网(浏览器、链接、各种页面)是 90 年代初期一个人发明的。是这样的……

1990 年代初期,英国人蒂姆·伯纳斯-李 (Tim Berners-Lee)发明了互联网。尽管,尽管如此,他发明的东西更准确地称为 Web:,World Wide Web他是www,他也是万维网。是的,一个人发明了万维网。

从 1986 年到 1991 年,他在 CERN 研究中心(位于瑞士日内瓦)从事新的科学文档标准方面的工作。你看,科学家习惯以文章的形式发表科学论文,并在文章末尾标明所用文献列表。换句话说,科学知识是相互链接的文章列表。

顺便说一下,现代维基百科与其创建者对万维网的看法非常相似:相互链接的科学文章、所使用的来源和文献列表。如果 Tim 幸运的话,那么网络仍将是这个样子。但是在通往更光明未来的道路上,世界在某个地方走错了路:)

网络基于三种技术:

  • HTML-page,其中包含文字、图片和其他链接HTML-pages.
  • HTML-page•以最人性化的方式显示的浏览器。
  • • 协议http——网络服务器与浏览器和彼此通信的标准。

Tim Berners-Lee 并没有发明这些东西,而是将它们标准化。HTML- 是在标准的基础上创建的SGML。标签也是从那里借来的。但世界上第一个名为WorldWideWebTim 的网络浏览器是他自己编写的,时间可以追溯到 1990 年。

1.2 HTML 不是编程语言

HTML它不是一种编程语言,而且从来都不是。永远不要那样说。即使你会写简历,也绝对不要HTML在编程语言部分注明,只能在工具(技术)部分注明。在你的简历中写下你知道一门编程语言将是一个严重的错误HTML。为什么?

关键是HTML它是一种文档标记语言。如果我们非常简化的话,那HTML-document就是一个文本(文档)里面插入了图片、表格、链接等。

假设您想写一篇文章:

  • 文章标题(title)。
  • 文章本身,由一个段落组成。
  • 图片。
  • 您想用粗体显示的一些重要陈述。
  • 在文章的中间,提供一些有用信息的链接。

以下是该文档在浏览器中的外观:


家猫

从科学分类学的角度来看,家猫是食肉目猫科的哺乳动物。通常,家猫被认为是森林猫的亚种,但是,从现代生物分类学(2017 年)的角度来看,家猫是一个独立的生物物种


很好,对吧?该标准HTML允许您使该文档对人类和计算机都可读。这是它的样子HTML-standard

<h1>家猫</h1>

从科学分类学的角度来看,家猫是食肉目猫科的<a href=”/”>哺乳动物</a> 。通常,家猫被认为是森林猫的亚种,但是,从现代生物分类学(2017)的角度来看,家猫<b>是一个独立的生物物种</b>

<img src=”cat.jpg”>

文章文本中添加了特殊标签以红色突出显示),人和计算机(浏览器)都可以理解这些标签。浏览器可以为读者精美地展示文章,文章的作者可以轻松编辑。

1.3 HTTP协议的出现

该缩写HTML代表Hyper Text Markup Language超文本文档标记语言。超文本是由相互链接的页面组成的文档。它是什么http

HTTP代表Hyper Text Transfer Protocol超文本传输​​协议(标准)。http或者https如果您尝试将链接复制到打开的页面,您可以在浏览器的地址栏中看到。

典型的页面链接如下所示:

http://google.com/logo.jpg

链接的最开头是协议名称,后跟一个冒号和两个正斜杠。蒂姆·伯恩斯-李 (Tim Bernes-Lee) 曾在一次采访中表示,如果他知道该协议http会如此受欢迎,他就会想出更短的内容。http://(毕竟,世界上几乎所有链接都以or开头https://

让我们回到浏览器。当浏览器请求时html-page,它向服务器发送一个文本文件(请求)并接收另一个文本文件(响应)作为回报。这种操作模式称为客户端-服务器。

首先是关键信息,然后是服务信息。文本查询的第一行由模式给出:

MethodURI  HTTP/Version

CodeGym 用户的个人页面由链接给出

https://codegym.cc/me

http-request浏览器看起来像这样:

GET /me  HTTP/1.0
Host: codegym.cc

作为响应,服务器很可能会发送

HTTP/1.0 200 OK
<html>page text...

响应文本中的第一行是http 协议版本和响应状态 (200, OK)然后是一个空行,然后只是以文本形式出现html-page浏览器请求的行。一切都很简单:)