您现在的位置: 无忧电子商务网 >> 信息学院 >> 程序开发 >> php >> 正文

认知Web服务器

作者:作者:未…    信息学院来源:网络收集    点击数:    更新时间:2006-8-27 我要参与讨论

  在许多用户看来,一个Web网站的成败主要在于它所提供的内容和功能,殊不知支持这些内容和功能的Web服务器才是真正的幕后英雄。据统计,全世界已有500多万个网站。每个网站的后面都运行着一个Web服务器,那么什么是Web服务器?它是怎样工作的?......

  从C/S到Web
  最早的网络系统是简单的主机/终端系统,所有的应用程序都由主机完成,终端只是运行服务器上相应的程序。PC时代的到来,使计算机网络和计算机应用得到了很大的发展,由于PC价格的不断下降和性能的不断提高,面向终端的大型主机的应用领域越来越少。特别是网络操作系统如NetWare和Windows NT的兴起,以及网络数据库系统的出现,开辟了网络应用的新模式——C/S(Client/Server-客户/服务器)模式。C/S模式是一种两层结构的系统,第一层是在客户机上处理表示逻辑与业务逻辑,第二层则是通过网络运行的数据库等服务器系统。C/S模式将事务分开进行处理,实现了网络的分布式计算,很长时间里也帮助企业实现了局域网建设,完善了企业内部业务管理,提高了工作效率。然而C/S模式在系统的集成与维护、操作界面一致性、系统的扩展性等方面都存在明显的局限性,所以就象主机/终端式网络被C/S模式的网络系统所取代一样,在Internet/Intranet技术环境里,也会出现更新的系统模式。

  基于Web技术的Internet/Intranet近年来已经得到了广泛的应用,Intranet是以TCP/IP协议为基础、以Web为核心的企业内部网,用户通过低成本、简单易用的客户浏览器就能随时随地到企业的Web站点上查阅自己所需的数据。浏览器客户端操作界面的一致性避免了C/S模式客户端程序的多样性,而服务器端的开放和基于标准的连接方案使企业很方便地通过Internet同外界联系;同时,Web信息动态的、交互式的发布方式从根本上改变了企业的服务质量,增加了企业的商业机会。


  图1 Web三层结构

  在三层结构的Web技术中,数据库不是直接向每个客户机提供服务,而是与Web服务器沟通,实现了对客户信息服务的动态性、实时性和交互性。这种功能是通过诸如CGI、ISAPI、NSAPI以及Java创建的服务器应用程序实现的。如图1所示。

  什么是Web服务器(Web Server)
  Web技术的独特之处是采用超链接和多媒体信息。Web服务器使用超文本标记语言(HTML-HyperText Marked Language)描述网络的资源,创建网页,以供Web浏览器阅读。HTML文档的特点是交互性。不管是一般文本还是图形,都能通过文挡中的链接连接到服务器上的其他文档,从而使客户快速地搜寻他们想要的资料。HTML网页还可提供表单供用户填写并通过服务器应用程序提交给数据库。这种数据库一般是支持多媒体数据类型的。

  Web浏览器(Web Browser)是一个用于文档检索和显示的客户应用程序,并通过超文本传输协议HTTP(HyperText Transfer Protocol)与Web服务器相连。通用的、低成本的浏览器节省了两层结构的C/S模式客户端软件的开发和维护费用。目前,流行的Internet Explorer和Netscape Navigator除提供基本的文档检索、显示和导航特性外,还支持HTML的高级显示(如表和帧)以及ActiveX、Java、JavaScript等特性。

  Web服务器是怎样工作的
  在许多用户看来,一个Web网站的成败主要在于它所提供的内容和功能,殊不知支持这些内容和功能的Web服务器才是真正的幕后英雄。那么,一个Web服务器是怎样工作的呢?

  几年前,当Web服务器刚刚出现的时候,它所支持的应用只是简单的HTML文件和图像的浏览,当Web服务器接到一个对Web页面的请求,如http://www.ccidnet.com.index.html,就会通过URL(Uniform Resource Locator-统一资源定位器)定位到相应的宿主文件服务器上,并找到相应的文件index.html,然后从宿主文件服务器上下载该文件并通过HTTP协议把它传输给Web浏览器(Web Browser)。当然,这只是一个基础功能,Web服务器同Web浏览器之间的关系远非这样简单。Web应用的最重要的一个扩展是动态内容的引入。例如,Web服务器可以根据用户输入的请求,去直接或间接地创建Web网页,然后返回给Web浏览器。最早实现动态内容应用的方法是通过CGI(Comman Gateway Interface公共网关接口),它对Web服务器上程序的运行及Web服务器同Web浏览器之间动态内容的传输有一个基本的定义。如图2 所示。

  Web应用的另一个进展是HTTPS(HyperText Transmission Protocol, Secure安全超文本传输协议)的出现,这种协议保证了Web服务器和Web浏览器之间的通信安全,从而使得电子交易成为可能。

  Web服务器同Web浏览器之间的通信是通过HTTP协议进行的,那么,什么是HTTP协议?简单说,HTTP协议是Web浏览器和Web服务器之间的应用层协议,它基于TCP/IP协议,是通用的、无状态的、面向对象的协议。它的作用原理包括四个步骤:


  图2 CGI定义图

  连接:Web浏览器与Web服务器建立连接,打开一个称为socket(套接字)的虚拟文件,此文件的建立标志着连接成功。

  请求:Web浏览器通过socket向Web服务器提交请求。

  应答:Web浏览器提交请求后,通过HTTP协议传送给Web服务器。Web服务器接到后,进行事务处理,处理结果又通过HTTP传回给Web浏览器,从而在Web浏览器上显示出所请求的页面。

  关闭连接:当应答结束后,Web浏览器与Web服务器必须断开,以保证其它Web浏览器能够与Web服务器建立连接。

  这样,Web服务器的处理过程包括了一个完整的逻辑阶段:接受连接——产生静态或动态内容并把它们传回浏览器——关闭连接——接受下一个连接,如此进行下去。可以想象,在访问者多的情况下,服务器必然会应接不暇。解决这个问题可以借助两种技术:多线程和多进程。Web服务器支持Unix系统的端口监视模块(一种多进程的模式)、多线程、多进程或两种技术的混合。

  有了连接,Web服务器怎样向Web浏览器提供内容呢?这里的关键是内容必须能为浏览器识别并且表现出来。这其中决定如何显示内容的主要机制是MIME(Multiple Purpose Internet Mail Extension-多用途因特网邮件扩展)类型,MIME会告诉Web浏览器什么样的文档将被发送,而且,这种类型的鉴别并不局限于简单的图象文档和HTML文档。例如,Apache WebS

[1] [2] [3] 下一页

在google里搜索更多认知Web服务器

Google
Web www.51ec.org
【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
我来说两句 对此文章发表了评论
  昵 称: *必填    ·注册用户·
  评 分: 1分 2分 3分 4分 5分     严禁发表危害国家安全、政治、黄色淫秽等内容的评论,用户需对自己在使用本网站服务过程中的行为承担法律责任。本站管理员有权保留或删除评论内容,评论内容只代表机友个人观点,与本网站立场无关。  
评 论
内 容

 
评论列表 (最新 评论仅限网友观点!)

供求信息




| 设为首页 | 加入收藏 | 关于我们 | 广告服务 | 联系方式 | 友情链接 | 版权申明