万维网在互联网之上运行,互联网上还有Skype,Minecarft和instagram,互联网是传输数据的管道,各种程序都会用,其中传输最多数据的程序是万维网,分布在全球数百万个服务器上,可以用浏览器来访问万维网。
超链接hypertext
万维网的最基本单位,是单个页面,页面有内容吗,也会去往其他页面的链接,这些链接叫超链接。
这些超链接形成巨大的互联网络,这是万维网名字的由来,这说起来很既简单,但超链接做出来之前,计算机每次想看另一个信息时,你需要在文件系统中找到它,或是把地址输入搜索框。
有了超链接,你可以在相关主题间轻松切换。
因为文字超链接如此强大,它得到一个同样厉害的名字(超文本hypertext),如今超文本最常指向的是另一个网页,然后网页由浏览器渲染。
URL(uniform resource locator)
为了使网页能互相连接,每个网页需要有唯一的地址。这个地址叫统一资源定位器(uniform resource locator),简称URL。
一个网页URL的例子就是“thecrashcourse.com”
http(Hypertext Transfer Protocol)
当你访问一个网站,及计算机首先会DNS查找,输入一个域名如“thecrashcourse.com”
DNS会输出对应的IP地址,现在有了IP地我,你的浏览器会打开爱一个TCP连接到这IP地址,这个地址运行网络服务器
这时你的计算机连接到了thecrash.com服务器,下一步是向服务器请求courses这个页面(hypetext page),这里会用用到超文本传输协议(Hypertext Transfer Protocol)(HTTP)
HTTP第一个标准,http0.9创建于1991年,只有一个指令GET指令,因为我们想要courses页面
我们向服务器发指令GET/courses,该指令以ASCII编码发送到服务器
之后不断重复。
之后版本HTTP添加了状态码,状态码放在请求前面,距离状态码200表示网页找到了,给你
状态吗400-499代表客户端出错,比如网页不存在404错误
超文本的存储和发送都是普通文本形式,举个例子,编码可能是ASCII或UTF-16,因为纯文本无法表明什是链接,什么不是链接。因此开发了超文本标记语言(HTML)
HTML第一个版本是0.8,创建于1990,有18中HTML指令
网页创建
开始一个创建网案例
我们输入h1代表一级标题,然后<>括起来,这是一个HTML标签,我们不想以一整业都是你标签,所以加作为结束标签
我们用
<
a
>
<a>
<a>标签来做超链接,它有一个herf属性,说明链接指向哪里,当点击链接时就会进入那个网页,如下图kilingon,然后用结束
<
h
2
>
<h2>
<h2>标签做二级标题
HTML也有列表标签,我们先写
<
o
l
>
<ol>
<ol>代表有序列表(ordered list),然后想加几个列表项目就加几个,用
<
l
i
>
<li>
<li>包起来就行
读者也许不知道Batleth是什么,那么也加上超链接,最后为了保持格式,用
<
/
o
l
>
</ol>
</ol>代表列表结束
最新的·HTML,HTML5有100多种标签,还有其他相关技术比如层叠样式表(CSS)和JavaScript,这辆可以加进网页,做一些更厉害的事
浏览器
网页浏览器可以和网页服务器沟通,浏览器不仅获取网页和媒体,,获取后还负责显示,第一个浏览器是由Tim Berners-Lee在1990年写的,一共花了2个月
URL ,HTML,HTTP,和同事在CERN内部使用一段时间后,在1991年发布出去,万维网就此诞生,万维网有新的标准,大家都可以开发新的服务器和新的浏览器,因此伊利诺伊大学香槟分校的一个小组,在1993年做了Mosaic浏览器
第一个可以再文字旁边显示图片的浏览器,之前浏览器要单开一个新窗口显示图片,还引进了书签等新功能,界面友好,使它很受欢迎。
1990年末许多浏览器面世
也有很多服务器面世。如Apache和微软互联网信息服务(IIS)
搜索引擎
如果不知道网站地址,单想搜索东西,如猫图片,有以下办法
随着网络变大,人工编辑目录变得不便利,开发了搜索引擎
它有三部
每看到新链接就加入自己的列表
记录访问过的网页上,出现过哪些词
早期搜索引擎排名方式非常简单,取决于搜索词在页面上出现的次数,刚开始还行,知道有人钻空子
与其信任网页上的内容化,搜索引擎会看其他网站,有没有链接到这个网站,如果写满猫的垃圾网站,没有网站会指向他
所以这些反向链接数量特别是由信誉的网站,代表网站质量
网络中立性
网络中立性,是应该平等对待所有数据包,无论这个数据包是我的邮件还是你在看的视频。速度优先级都应该是一样的。
但很多公司乐意让他们的数据优先到达
Comcast没有数据中立性,它可以让自己内容优先到达节流其他线上视频
节流的意思是故意给更少的带宽和更低的优先级