-
互联网如何运作:HTTP和HTML
-
我是Jasmine,我是XBOX One工程团队的项目经理。
-
我们最大的功能之一是XBOX Live。
-
这是一项依靠互联网连接世界各地玩家的在线服务。
-
这不是一件容易的事,幕后发生了很多事情。
-
互联网完全改变了人们互动和联系的方式。但它是如何工作的?
-
世界各地的计算机又是如何相互交流的?让我们来看看网页浏览。
-
首先,打开Web浏览器,这是你用来访问网页的应用程序。接下来,
-
你键入Web地址或URL,它代表你想访问的网站的统一资源定位器,如tumblr.com。
-
嗨,我是大卫卡普,Tumblr的创始人,今天在这里谈谈我们
-
每天使用的网络浏览器实际上是如何工作的。你可能想知道
-
当你在浏览器中输入一个地址,并点击Enter之后,实际发生了什么呢?
-
这真是你能想象到的最疯狂的事情。从那一刻起,你的计算机
-
就开始与称为服务器的另一台计算机通话,这个距离通常是数千英里。
-
并且在几毫秒内,你的计算机会向该服务器请求网站
-
服务器以称为HTTP的语言开始与您的计算机对话。
-
HTTP代表超文本传输协议,你可以把它看作是一台计算机
-
用来向另一台计算机索取文档的语言。而且它实际上非常简单。
-
如果你要截取计算机与互联网上的Web服务器之间的对话,
-
它主要是由称为“GET”请求的东西组成。
-
因此,如果你尝试登录Tumblr并加载我们的登录页面,你所要做的
-
就是向Tumblr的服务器发送一个GET请求,上面写着get/login。
-
这告诉Tumblr的服务器,你需要Tumblr登录页面的所有HTML代码。
-
所以HTML代表超文本标记语言,你可以将其视为用于
-
告诉Web浏览器如何使页面外观的语言。如果你想到像
-
维基百科这样的东西,它实际上只是一个简单的大文档,
-
HTML是你用来使标题变大和粗体的语言,使字体成为正确的字体,
-
将某些文本链接到其他页面,使某些文本粗体化,使一些文本斜体,
-
将图像放在页面的中间,使图像与右边对齐,使图像与左边对齐。
-
网页文本是直接包含在HTML中的,
-
但是图像或视频等其他部分是具有自己需要的URL单独档案的。
-
浏览器向其中的每一个发送单独的HTTP请求,并在它们到达时显示它们。
-
如果一个网页有很多不同的图像,并且每个图像都会产生一个单独的HTTP请求
-
这会使页面加载速度减慢。现在,有时候当你浏览网页时,
-
你不仅仅是在请求带有GET请求的页面。有时你发送信息就像
-
填写表格或输入搜索查询一样,浏览器使用HTTPPOST请求
-
以纯文本形式将此信息发送到Web服务器。假设你登录Tumblr,
-
那么第一件事是你提出登录请求,也就是tumblr的登录页面,并且有一些附加数据。
-
它将有你的电子邮件地址和密码。那会把你带领到Tumblr的服务器。
-
Tumblr的服务器知道了你就是大卫。于是,它把一个网页发回给你的浏览器,
-
上面写着“成功”,登录者为大卫!但是除了网页之外,
-
它还附加了一些不可见的cookie数据,
-
你的浏览器可以看到并知道如何保存这些数据。
-
这非常重要,因为它确实是网站记住你是谁的唯一方式。
-
并且你的Web浏览器会保留该号码,并在你下次刷新Tumblr时,
-
或去Tumblr.com时,你的网络浏览器会自动知道
-
将该ID号附加到它发送给Tumblr服务器的请求中。
-
所以Tumblr的服务器可以看到来自你的浏览器的请求及ID号,
-
并且知道,“好的,这是大卫的请求。” 现在,互联网是完全开放的。
-
它的所有连接都是共享的,信息以纯文本形式发送。
-
这使得黑客能够窥探到你通过互联网发送的任何个人信息。
-
但是安全网站阻止了这一点,通过要求你的Web浏览器
-
使用安全套接字层及其后续传输层安全性在安全通道上进行通信。
-
你可以将SSL和TLS视为围绕通信的安全层保护他们免受窥探或篡改。
-
当你看到浏览器地址栏中显示在HTTPS旁边的小锁时,
-
SSL和TLS是活动的。HTTPS协议确保你的HTTP请求是安全的、受到保护的。
-
当网站询问您的浏览器时,为了进行安全连接,
-
网站首先提供数字证书。这就像一张官方身份证,
-
证明它是它声称的网站。数字证书由证书颁发机构发布,
-
证书颁发机构是验证网站身份并为其颁发证书的受信任实体,
-
就像政府可以签发身份证或护照一样。
-
现在,如果网站尝试在没有正确发布的数字证书的情况下启动安全连接,
-
你的浏览器会发出警告。这是网页浏览的基础知识!
-
也是我们日常看到的情况。总而言之,HTTP和DNS管理HTML、
-
媒体文件或Web上的任何内容的发送和接收。让这成为可能的是,
-
TCP/IP和路由器网络,它们以小数据包的形式分解和传输信息。
-
这些数据包本身由二进制序列组成,序列分别为1和0,
-
并通过电线,光纤电缆和无线网络实际发送。
-
一旦你学会了互联网的工作原理,你就可以依赖它,而不用
-
记住所有的细节。我们可以相信,所有这些层将一起工作,
-
以规模和可靠性先后交付信息。