CGI(CommonGateway Interface,公共网关接口)技术是对HTML语言的扩展。允许用户编写扩展的应用程序来扩展服务器的功能,实现客户端与服务器之间的交互。CG1程序可以在不同的平台上实现特定的功能,并且可以在不做太多更改的情况下很容易地完成平台间的迁移。与其他专用服务器的扩展功能相比,任何支持CGI的服务器的主要特点之一是,只要符合CGI规范,CGI程序的服务器就可以用任何语言编写,并可以在任何平台上开发。
由于cgi程序的大多数处理对象都是字符串,所以编写cgi程序的语言最好是perl,C≈C≤+。其他语言在编写CGI程序方面有缺点,主要是因为它们缺少可灵活应用的字符串处理程序。
HTML+CGI可以实现HTML本身无法实现的下列WWW服务:
(1)处理客户端提交的表单数据;
(2)在Web页面上创建大部分非静态内容;
(3)将搜索功能添加到网页和文档中,
(4)创建交互式应用程序,如聊天室、投票站、柜台等;{+-*/)(5)允许动态生成页面,生成用户自定义的页面,等等。CGI
CGI是一种通用的接口标准。CG1程序是一个符合通用接口标准并在Web服务器上运行的程序。它的工作是控制浏览器的信息需求,生成并返回浏览器所需的文件。
CGI是外部扩展应用程序与WWW服务器交互的标准界面。外部编写符合CGI标准。
扩展应用程序可以处理客户端(www浏览器)输入的数据,这些数据需要协同工作,以完成客户端和服务器之间的交互。
常熟网站制作随着浏览器和W3C标准一致性的改善,以及无表格网页设计的认同性增加,超文件标示语言与层叠样式表共同用作网页内容的设计已经被广泛的接受和使用。最新的标准和建议则是朝着浏览器的能力扩充和改善发展,使之能够不需要插件程序也能够给用户传输多媒体信息和更多的选择。例如,您可以编写CGI外部扩展来访问外部数据库,客户端用户可以通过CGI外部扩展和WWW服务器查询数据并获得查询结果。
以下是CG1通过处理浏览器提交表单数据的基本原理。
常熟网站制作随着浏览器和W3C标准一致性的改善,以及无表格网页设计的认同性增加,超文件标示语言与层叠样式表共同用作网页内容的设计已经被广泛的接受和使用。最新的标准和建议则是朝着浏览器的能力扩充和改善发展,使之能够不需要插件程序也能够给用户传输多媒体信息和更多的选择。
(1)当客户端上的用户填写表单时,单击Submit按钮向服务器发出HTTP请求(称为CGI请求),请求将实际发送到由form标记中的action属性标识的URL。
(2)当Web服务器守护进程收到此请求时,将建立一个子进程(称为CGI进程)。URL子进程将CGI请求的相关数据设置为环境变量,在外部CGI程序和服务器之间建立两个数据通道(标准输入/输出),然后启动CGI指定的CGI程序,并与子进程同步。监视CGI程序的执行状态。