动态网页的CGI实现手艺
发布日期:2023-04-12浏览量:91
较早的动态网页手艺主要采用cgi,由于cgi手艺难度较大、效力不高,厥后又接踵泛起了如 asp、php,jsp 等许多新的动态网页手艺。为了对这些手艺的发展过程可能有所理解,并便于进行对比。
l.cgi的可移植性和可实现的功用
cgi(common gateway interface,公用网关接口)手艺是为html言语提供的一种扩展伎俩,容许用户编写扩展应用程序来扩展服务器的功用,实现客户 端与服务器的交互操纵。cg1程序可以在多种平台上实现必然的功用,而且无需 做太大的更改,就能够轻松地完成平台之间的移植。任何支持cgi的服务器与其余专用服务器的扩展功用比拟,主要的一个特性就是cgi程序的服务器可以用任何言语编写,在任何平台上开发,只有它知足cgi规范就能够。
由于cgi程序的大部分处置对象是字符串,以是编写cgi程序的言语最佳采用perl、c/c++言语,其余言语在编写cgi程序时都存在缺乏的地方,主要是由于它们缺乏可以灵活应用的字符串处置函数。
html加之cgi可以实现如下www服务,这些功用是html自己没法实现的:
(1) 处置客户端提交的表单数据;
(2) 创立web页面上大大都非静态的内容;
(3) 在web页面和文档中添加搜索功用;
(4) 创立交互应用,如谈天室、投票站、计数器等;
(5) 容许页面动态生成、生成用户定做的页面等。
2.cgi的根本道理
cgi是一种通用的接口标准。cg1程序就是契合这类通用接口标准的、运转在web服务器上的程序、它的事情就是控制阅读器的信息要求,发生并传回阅读器所需的文件。
cgi是外部扩展应用程序与www服务器交互的一个标准接口。根据cgi标准编写的外部 。
扩展应用程序可以处置客户端(www阅读器)输入的 需求协共事情的数据,从而完成客户端与服务器的交互操纵。比方,可以编写cgi外部扩展程序来访问外部数据库,客户端用户可以经由过程cgi外部扩展程序和www服务器进行数据查询并获得查询后果。
下面经由过程对阅读器提交表单数据的处置来理解如下cg1的根本道理。
(1) 当客户真个用户填写好表单后,单击“提交”按钮向服务器发出http要求(称为cgi要求)、理论上这里的要求将发往<form>标识表记标帜中的action属性标识的url。
(2) web服务器守护进程收到这个要求后,就会建立一个子进程(称为cgi进程)。该cgi子进程将cgi要求的有关数据配置成环境变量,在外部cgi程序与服务器之间 建立两条数据(标准输入/输出),而后启动url指定的cgi程序,并与该子进程连结同步,以监测cgi程序的执行状况。
(3) 子进程经由过程标准输出流将表单处置后果通报给服务器守护进程,守护进程再将处置后果作为应对消息回送到客户端并用阅读器显示出来。
用最简略的话来讲,cg1标准就是经由过程stdin(标准输入)或环境变量来获得服务器的输入信息,并经由过程stdout(标准输出)向服务器输出信息。
不外,用c或perl开发cgi程序时,网页设计手艺职员广泛感触难度大、修改庞大,效力不高。因这人们不竭开发出一些既容易进修把握,又能实现web动态交互功用的新手艺,今朝发展得比力成熟的新手艺主要有asp,php和jsp。
相关文章: