微型Web服务器的设计与实现
时间:2025-07-09
时间:2025-07-09
系统分析师
国外电子测量技术 2004年第1期 设计技术
微型Web服务器的设计与实现
刘波涛 郭麦成
西南石油学院计算机科学院(610500)
摘要:微型Web服务器可以看作是由HTTP和HTML构成的,它的功能不需要很全面,但却必须
具备一个Web服务器应有的基本特征。本文指出了在Win98系统下用Delphi6.0设计和实现一种微型Web服务器的方法,文中给出了相应的关键算法和关键结构。
关键词:微型Web服务器 Delphi6.0 超文本传输协议
DesignandRealizationofMicroWebServer
Abstract: ThemostbasicWebServeriscomposedofandfuctionsofa
microWebSeverneedn’http://www.77cn.com.cningDelphi6.0todevelopamicroAndalsoitproposesthekeyalgrithamKeywords:,引言
来描述。
迅速发展的Web技术给Internet应用提供了一个很好的发展方向。当今的许多应用都是基于Web技术的,如电子商务、视频会议、远程医疗诊断等。在嵌入式系统的应用中,由于HTML语言的标准统一性,只要在设备里建立一个微型Web服务器,人们就可以使用现有的Web浏览器与该设备进行双向交互、接收或发送信息。因此,针对微型Web
服务器的研究和应用,具有重大的意义,它为我们管理、控制和监测各种各样的设备提供了一个很好的途径%基于Internet,也就是说,只要设备接入了Internet,我们就可以在世界上的任何地方十分方便地控制、操纵那些配备有微型Web服务器的设备。 本文就Win98系统下利用Delphi6.0如何设计、实现微型Web服务器中的主要部分作了详细的介绍。利用这种方法,可以非常容易地在嵌入式设备中建立起自己的微型Web服务器。
图1微型Web服务器的结构
Web浏览器通常可以使用流行的IE或者其它的浏览器。服务器端的TCP/IP协议栈是操作系统内嵌的,其信息流符合HTTP协议。服务器中的HTTP引擎用来分析浏览器的请求消息,并根据请求作出相应的动作。这些动作包括向浏览器发送一些静态页面或调用一些应用服务程序。对于服务器中的静态web页面,可以使用一些常用软件如FrontPage等制作,以备Web服务器调用。而服务器中的应用服务程序则用来扩展服务器所提供的服务。 从图1中可以看出,微型web服务器的核心就是:HTTP引擎。
典型的Web服务器的模型
一个典型的微型Web服务器的结构可以用图1
作者简介:
HTTP引擎的设计和实现
HTTP协议是一种网络应用层的标准协议,
Web浏览器和Web服务器之间的通信都是采用HTTP协议来实现的。因此只要是符合HTTP协议的通讯过程和数据内容,就可以使用浏览器作为客户端进行连接和传递。在微型Web服务器中,为得到一个稳定的用户界面而又不影响系统有限的
刘波涛(1980-),男,2003年毕业于江汉石油学院
计科系,现在西南石油学院计算机科学学院攻读计算机应用专业硕士学位。
—26—
系统分析师
国外电子测量技术 2004年第1期 设计技术CPU及内存资源,必须使用HTTP1.1标准。与HTTP1.0相比较,HTTP1.1支持TCP的持续连接并可以使用管道技术,因此,它的效率较高,
并且不会造成过大的资源消耗。
HTTP协议利用字符串的形式进行通信,将它传送的信息称为HTTP消息(HTTP2Message)。根据IETF(InternetEngineeringTaskForce)所制定的RFC(RequestForComments)2616文档中的定义,我们可以将实际过程中的HTTP消息分为两种类型:浏览器传送给服务器的请求消息(HTTPRequestMessage)和服务器传送给浏览器的响应消息(HTTPResponseMessage)。这两种消息的执行实体是不同的,响应消息由浏览器解释执行,请求消息则由服务器解释执行。 请求消息的规范格式如下:Method Request2URI
HTTP2Version ;请求行General2Header;Request2HeaderEntity2;空行
Message2Body;消息实体 三种消息头的次序是任意的。其中,请求行必不可少,其余部分则是可选的。
在请求行中,Method(方法)说明了在给定的资源范围内所执行的动作,如调用Web页面或请求特定的URL。常用的两种方法是GET或POST。当然还有其他的方法,这些方法在HTTP协议规定中都有说明,详细说明见RFC2616。 Request2URI(UniformResourceIdentifier)字段说明所请求的信息资源。URI称为统一资源标识符,用于标识Internet中某一主机上的某一资源的位置。一个Web页面(如http://www.77cn.com.cn/index.html),基本上就是一个指定了协议(http://)的URI。URI与通常所说的“网址”有所不同,网址是指某个网点IP地址所对应的域名(如http://www.77cn.com.cn),而URI则要进一步指明网址下的路径、网页文件名(如http://www.77cn.com.cn/index.html)、web应用程序名等信息资源。Web上每一种可用的资源如HTML文档、图像、视频片段、程序等,都要由一个唯一的URI进行标识和定位。
HTTP2Version则指明浏览器所能支持的HTTP协议版本号,多数是1.0(由RFC1945规定)或1.1。 通用消息头、请求消息头和实体消息头的一般格式都是:field2name:field2value。它们可以由多
个字段(field)组成,每个字段占一行(用回车换行符CR/LF作为每一行的结束标志),每行由字段名和字段值组成,彼此用冒号隔开。HTTP对于每一个字段的意义及其对应的值都有详细的规定(详见RFC2616)。可供使用的字段很多,但并不是每次发送请求消息都要使用所有的 …… 此处隐藏:3104字,全部文档内容请下载后查看。喜欢就下载吧 ……