Web——万维网

什么是Web

Web是万维网(World Wide Web)的俗称,它是一个体系结构框架。该框架把分布在整个Internet数百万台机器上的内容链接起来供人们访问。

站在用户的角度看,Web由大量分布在全球范围的内容组成,这些内容以Web页面(Web Page)或简称为页面(Page)的形式表示。每个页面可以包含指向其他页面的链接(link),这些页面可以分布在全球任何地方。用户单击一个链接就可以跟随这个链接来到它所指向的页面。这个过程可以无限重复下去。让一个页面指向另一个页面的想法现在称为超文本(hypertext)。

浏览器

通常观看页面的程序称为浏览器(browser)。Firefox、Internet Explorer和Chrome是比较流行的浏览器。浏览器取回所请求的页面,对页面内容进行解释,并在屏幕上以恰当的格式显示出来。页面内容本身可能是文本、图像和格式化的命令混合体。表现的形式多种多样:可以表现成传统的文档形式,或者表现成其他内容的形式(比如视频),或者是一个能产生图形界面的程序,用户通过该界面实行与网页的交互方式。

客户端

当Web最初被建立时,为了让一个页面指向另一个Web页面,需要某些机制来命名和定位页面。尤其是,在显示一个被选中的页面之前,首先必须回答3个问题:
(1)这个页面叫什么?
(2)这个页面在哪里?
(3)如何访问这个页面?
Web的解决方案是给每个页面分配一个统一资源定位符(URL,Uniform Resource Locate),用来有效地充当该页面在全球范围内的名字。

URL由三部分组成:协议、主机的DNS域名、路径名。
URL设计是开放式的,在某种意义上它很简单,允许浏览器使用多种协议去获得各种不同的资源。事实上,已经定义了针对各种其他协议的URL。如下表所示。

名字用途实例
http超文本(html)http://www.ee.uwa.edu/~rob/
https安全的超文本https://www.bank.com/accounts/
ftpFTPftp://ftp.cs.vu.nl/pub/minix/README
file本地文件file:///usr/suzanne/prog.c
mailto发送邮件mailto:JohnUser@acm.org
rtsp流式媒体rtsp://youtube.com/montypython.mpg
sip多媒体呼叫sip:eve@adversary.com
about浏览器信息about:plugins

服务器端

当用户键入一个URL或者单击一行超文本时,浏览器会解析URL,并且将http://和下一个斜线之间的那部分解释成待查找的DNS名字。有了服务器的IP地址后,浏览器与该服务器的80端口建立一个TCP连接,然后它发送一条命令,其中包含了URL的剩余部分,即该服务器上某个页面的路径;最后服务器返回该页面供浏览器显示。

Cookie

Cookie是一小段文本信息,伴随着用户请求页面在Web服务器和浏览器之间传递。
当客户请求一个Web页面时,服务器除了提供所请求的页面以外,还以Cookie的形式提供了一些附加的信息。Cookie是一个相当小的命名的串(最多4KB),服务器将它与浏览器关联。这种关联与用户关联不一样,但它非常接近而且比IP地址更有用。浏览器把服务器所提供的Cookie通常存储在客户机磁盘Cookie目录一段时间,这样在整个浏览器调用期间一直坚持Cookie,除非用户禁用Cookie。Cookie只是字符串,而不是可执行程序。原则上,一个Cookie可能包含病毒,但由于Cookie只被当作数据处理,因为不存在病毒得以实际运行从而造成损害的正式途径。然而,始终有可能存在一些黑客利用一个浏览器的漏洞,来激活病毒。

一个Cookie可能包含至多5个字段:域、路径、内容、过期、安全。

路径内容过期安全
sneaky.com/UserID=12345631-12-19 23:59

域(Domain)指出Cookie来自何方。浏览器应该检查服务器没有谎报它们的域名。每个域为每个客户端应该存储不超过20个Cookie。

路径(Path)是服务器目录结构中的一个路径,它标识了服务器文件树的哪些部分可能使用该Cookie。通常是/,意味着整棵树。

内容(Content)字段采用“名字=值”的形式。这里名字和值都可以是服务器期望的任何内容。这个字段正是存放Cookie内容的地方。

过期时间(Expires)字段制定了该Cookie何时过期。如果这个字段不存在,则浏览器在退出时将丢弃Cookie,这样的Cookie称为非持续Cookie(nonpersistent cookie);如果针对某个Cookie提供了时间和日期,那么这样的Cookie称为持续Cookie(persistent cookie),它被一直保存到过期为止。过期时间采用了格林尼治标准时间。为了从客户的硬盘上删除一个Cookie,服务器只需将它再发送一次,但是将该Cookie的过期时间指定为一个已经过去的时间即可。

安全(Secure)字段指示浏览器只向使用安全传输连接的服务器返回Cookie,所谓的安全传输就是SSL/TLS。

在浏览器向某个Web站点发出一个页面请求之前,浏览器检查它的Cookie目录,确定这个请求前往的目标域是否在当前客户端放置了Cookie。如果存在相应的Cookie,则该域放置的所有Cookie都被包含到请求消息中。服务器得到了这些Cookie以后,就可以按它所期望的方式来解释它们。

——摘自《计算机网络》第5版

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值