1.2 WWW概述
Web(World Wide Web,万维网)是分布在世界各地的计算机互相连接在一起组成的信息仓库。在WWW中信息是以文档的形式存储的,每一个文档被称为Web页,也称网页。为了标识Web上的每一个资源,WWW使用了URL(Uniform Resource Locator,统一资源定位符)。WWW具有独特的灵活性、可移植性及友好的用户界面,使用的信息检索协议是HTTP协议。WWW也是一个分布式的客户/服务器服务,下面介绍客户/服务器的基本概念。
1.2.1 服务器端、客户端的概念
客户/服务器(Client /Server)模型是相互协作的应用程序之间主要的交互模式。
服务器(Server)指的是能在网络上提供服务的一个计算机程序。服务器接收请求,产生响应,并将结果返回给请求方。
当一个可执行程序向服务器发出请求并等待响应时,它就成为客户(Client)。
上述的客户和服务器指的都是计算机上运行的程序,将运行客户程序的计算机称为客户端,将运行服务器程序的计算机称为服务器端。对Web来说,客户指的就是浏览器。
1.2.2 静态网页
静态网页是标准的HTML文件,其文件扩展名是.htm或.html,是Web上最简单的文档形式。这种网页不包含任何服务器端脚本,它包含的所有HTML代码都是在放置到Web服务器上前由程序员编写好的。之后除非程序员替换现有代码,否则不会在运行过程中进行修改,所以称为静态网页。静态网页的通信过程如图1-6所示。
图1-6 静态网页的通信过程
图1-6(a)显示当用户通过浏览器提出文档请求后,浏览器将用户提出的请求通过Internet发送到服务器,通知服务器取得所需的内容,也就是请求提交的过程。图1-6(b)显示服务器从本地磁盘取得所需的文档,并通过Internet将客户请求的内容发送给浏览器,之后由浏览器处理并显示,也就是服务器返回的过程。
网页技术设计的初衷是用来存储那些在相当长时间内保持稳定的信息,比如数字图书馆。所以早期网页技术主要是解决如何访问那些内容不变的文档。
尽管很多新的网页技术可以让人们更好地控制页面上显示的内容,但静态网页仍然流行,其原因有三:①静态网页容易创建;②静态网页维护费用低;③静态网页访问速度快。这些优点带来了很深远的影响——Web上的许多文档是静态的。
虽然静态网页如此流行,但是也有很多的缺点:①静态网页只能包含文本和图片,不能包含其他形式的内容;②静态页面不能提供即时信息;③信息只能单向流动,用户没有交互的体验;④静态页面一旦加载并显示,不会再有任何变化。为了克服静态网页的上述缺点,工程师们开发了服务器端脚本技术(Server-Side Scripting Technology),它可以让网页包含动态内容。这就是下面要介绍的动态网页。
1.2.3 动态网页
使用静态网页技术时,在服务器上保存的是网页的一个不变的副本,而动态网页是在被请求时才能生成页面所需内容。静态网页所使用的URL必须指向服务器磁盘上的某个静态文档,而在动态网页的情况下,URL关联的可能是服务器上的一个可执行的程序。当浏览器请求这类URL时,服务器首先运行对应的程序,然后将生成的输出结果返回给浏览器。服务器上可以保存任意多个脚本程序,然后根据用户的URL请求选择不同的程序来完成所需的计算任务。动态网页的通信过程如图1-7所示。
图1-7 动态网页的通信过程
图1-7(a)显示当用户通过浏览器提出对动态网页的请求后,浏览器通过网络将所请求的URL信息传递给服务器。服务器接受请求,发现所请求的是动态脚本,就启动相应的程序。其中向下的粗箭头表示启动程序的动作。图1-7(b)显示服务器启动程序,得到运行结果,并将结果返回给浏览器的过程,其中向下的箭头表示解释程序返回结果的动作。Web服务器返回的是标准的Web文档。
使用动态网页技术不仅可以使用Web服务器端的计算能力,而且由于程序的动态运行,使得客户能够获得更多的实时数据,真正实现了“动态”的网页。动态网页技术所能提供的远不仅如此。人们使用动态网页技术实现了个性化Web页面、个性化广告、真正的网页交互和电子商务网站上的购物车等各种应用,使得Web服务非常丰富。