CGI老友简介
CGI全称是“公共网关接口”(CommonGateway Interface),CGI可以用任何一种语言编写,只要这种语言具有标准输入、输出和环境变量。
绝大多数的CGI程序被用来解释处理截自表单的输入信息,并在服务器产生相应的处理,或将相应的信息反馈给浏览器。CGI程序使网页具有交互功能。
事实上,任何一种程序语言,只要能在服务器主机上利用CGI接口来编写应用程序,都可以叫作CGI程序语言。目前最为流行的CGI程序语言有四种:C,Shell,Perl和VisualBasic,其它一些语言也有许多人在用,如TCL,Fortran及AppleScript等。
1、CGI程序的执行
CGI 程序一般是个可执行程序。编译好的CGI程序一般要集中放在一个目录下。具体存放的位置随操作系统的不同而不同。
CGI程序的执行一般有两种调用方式:
第一种是通过URL直接调用,如:“http://202.114.2.182/cgi-win /cgi.exe”,在浏览器的URL栏里直接写入上述描述就可以调用该程序;
另一种方式,也是主要的方式,是通过交互式主页里的FORM栏调用,通常都是用户在填完一张输入信息Form后按确认按钮启动CGI程序。
2、CGI工作的主要流程
CGI工作的主要流程是:
1、一个用户请求激活一个CGI应用程序;
2、CGI应用程序将交互主页里用户输入信息提取出来;
3、将用户输入的信息传给服务器主机应用程序(如数据库查询〕;
4、将服务器处理结果通过HTML文件返回给用户;
5、CGI进程结束。
3、CGI的性能评价
CGI 的跨平台性能极佳,几乎可以在任何操作系统上实现,如DOS、WINDOWS、UNIX、OS/2、Macintosh等。实现CGI的编程语言也有很多选择。
CGI的应用程序一般都是一个独立的可执行程序,和WWW服务器各自占据着不同的进程,而且一般一个CGI程序只能处理一个用户请求。这样,每有一个用户请求,都会激活一个CGI进程,当用户请求数量非常多时,会大量挤占系统的资源如内存,CPU时间等,造成效能低下。