网站大量收购独家精品文档,联系QQ:2885784924

CGI技术在嵌入式Web服务器的设计与实现.ppt

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
CGI技术在嵌入式Web服务器的设计与实现

LOGO CGI技术在嵌入式Web 服务器的设计与实现 苏初旭 2011年9月15日 Company Logo Contents CGI技术简介 1 CGI工作原理 2 B/S架构简介 3 CGI程序设计与实现 4 Company Logo CGI技术简介 CGI全称是“通用网关接口”(Common Gateway Interface),是WEB服务器与外部扩展应用程序交互的一种标准接口。它是用来沟通HTML表单和服务器端口程序的接口。通过编写不同的CGI外部扩展程序,可以完成对下位机数据库的访问,客户端通过它和WEB服务器就可以完成对动态数据的访问。 Company Logo CGI技术简介 CGI是一种基于浏览器的输入并在Web服务器上运行的程序方法,基于CGI标准编写的程序必须要在支持CGI的服务器环境下才能运行。它由浏览器的输入触发,在服务器上运行,并可将运行结果反映在浏览器上。 Company Logo CGI工作原理 CGI是在Web服务器上定义了Web客户请求与应答的一种方法。当客户端的用户向Web服务器发出http请求(称为CGI请求)时,启动Web服务器的一个CGI程序。它的任务是把客户的请求从环境变量和标准输入stdio中取出,并进行相应的加工处理。待处理结束后,由CGI程序通过标准输出决定如何对客户的请求做出应答,将处理结果以HTML格式回送到客户端浏览器。 Company Logo CGI程序工作流程 1、客户端发出请求 首先浏览器发出一个请求给Web服务器,如果该请求是一个静态文件(HTML文件、图像或者其它文件),Web服务器就是将文件直接传送给客户端浏览器。如果请求的是一个动态文件(CGI程序或者其它外部应用),Web服务器将激活相应的CGI程序。 Company Logo CGI程序工作流程 2、Web服务器响应请求 Web服务器守护进程接收到CGI请求,在成功建立TCP连接后,就会创建一个子进程。该CGI子进程将CGI请求的有关数据设置成环境变量,在外部CGI程序与服务器间建立两条数据通道(标准输入/输出)。 Company Logo CGI程序工作流程 3、CGI程序对客户端的请求进行处理 Web服务器启动URL指定的CGI程序,并与该子进程保持同步,以监控CGI程序的执行状态。CGI程序通过环境变量读取客户端的输入数据并进行处理,如有必要CGI程序还要和一些外部服务(例如数据库)进行交互。 Company Logo CGI程序工作流程 4、Web服务器将结果传送给客户端 CGI程序处理完毕后通过标准输出流将处理结果传递给服务器守护进程,守护进程再将处理结果作为应答消息回送到客户端。 Company Logo CGI程序工作流程 5、Web服务器中断和客户端的连接 由于WWW采用HTTP协议,而HTTP又是工作在TCP协议之上的。TCP提供面向连接的服务,所以一次连接服务完成后即断开与客户端的连接。 Company Logo CGI程序工作流程 6、客户端显示结果 Web浏览器根据Web服务器送回的应答消息,按照HTML语法解释显示在浏览器窗口。 Company Logo B/S架构简介 B/S架构(Browser/Server,浏览器/服务器模式),WEB浏览器是客户端最主要的应用软件。而WEB服务器则是用来解析HTTP协议的。当一个HTTP请求(用户通过浏览器发送)被送至服务器时,服务器将会返回一个HTTP响应,这种响应可以返回一个静态HTML页面显示在浏览器上,也可以把响应动态的委托给一些可以运行在服务器端的程序(如CGI)。无论这些程序的功能目的如何,最终它们都将产生一个HTML响应来让客户端的浏览器能够进行浏览。 Company Logo B/S架构简介 服务器提供了客户端(浏览器)与CGI扩展程序之间的信息交换的通道。CGI的标准输入是服务器的标准输出,而CGI的标准输出是服务器的标准输入。客户的请求通过服务器的标准输出传送给CGI的标准输入,CGI对信息进行处理后,将结果发送到它的标准输出,也就是服务器的标准输入,然后由服务器将处理结果发送给客户端。 Company Logo B/S架构简介 Company Logo CGI程序的设计与实现 URL编码 客户端浏览器向服务器发送数据采用编码的形式进行。该编码就是URL编码。编码的主要工作时表单域的名字和值的转义。 表单域里的名字和值通过等号“=”字符连在一起。各对名字/值再通过“”字符连接在一

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档