什么是公共网关接口
CGI是信息服务器主机对外信息服务的标准接口,为了向客户端提供动态信息而制定。通过专门编写的CGI脚本程序(在CGI控制下运行的程序,通常称CGI程序),不仅可以生成静态的内容,而且可以生成完全无法预见的动态的内容。它能根据用户的需求输出动态信息,将数据库服务器中的信息作为数据源对外提供服务,将WWW服务和数据库服务结合起来。比如雅虎、搜狐等搜索引擎提供的强大搜索功能便是利用CGI实现的。
CGI是服务器的扩展,以扩充Web服务器能力。编写的服务器扩展使得Web站点更生动有趣。它不是传送一个乏味的静态页,CGI(和其他服务器扩展)让Web客户机从Web服务器请求信息。用户填写一个提交给服务器的表格,服务器使用提交的信息查询数据库或输入到一个程序,然后结果用于创建定制的Web页并将它发送给客户机。注意:在服务器和客户机间没有“往返”信息,用户必须填写表格并提交它,必须检测空白字段或含有错误信息的字段,并要求客户机必须重新提交表格。
CGI是非会话式的。它不能在处理来自Web浏览器的数据过程中停止并返回Web浏览器请求更正数据,CGI只允许数据输入。CGI处理数据,生成输出,然后终止。如果网关需要数据被更正,它只能运行结束,并当Web服务器重新提交数据时再开始。 CGI接口是在Web客户机和Web服务器间提供双向接口的协议,CGI脚本是决定它们通信时发生什么的一套命令。发明CGI是为扩展HTTP协议。它由以下部分组成:
•置于HTML文档中的CGI控制标记和字段说明符
•在服务器存放脚本用信息的内存中的环境变量
•客户机、服务器和脚本间的信息流
Web站点开发者使用CGI的步骤是,首先创建HTML表单并添加标签以定义出现在表单上的输入框、下拉列表框和按钮,以便收集来自用户的输入。其次,编写CGI脚本以接受端用户在HTML表单上键入的信息,并用它做点什么,比如查询后端数据库。Perl是建立脚本和报表的工具,很多程序员用它创建CGI脚本。
CGI脚本程序可以用C、C++等语言在多种平台上进行开发。无需太大修改就可以从一个平台移植到另一个平台上运行,具有很好的兼容性。
CGI应用程序可以是基于不同的程序系统,如DOS、UNIX、Windows、Windows NT等。CGI应用程序可以使用UNIX Shell描述语言或Perl语言写成。
CGI是极慢的,所以0pen Market创建了一个称为FastCGI的协议来解决这一问题。FastCGI不需要服务器创建地址空间,而是每当它需要运行CGI时,通过维护一个总是可用的CGI进程池来实现。
为什么需要MOSFET栅极电阻?MOSFET栅极电阻...
时间:2026-03-05
NTC/PTC/CTR热敏电阻是什么?热敏电阻的使用...
时间:2026-03-05
解析单电阻采样的原理以及注意点
时间:2026-03-05
共源极放大器的设计方法
时间:2026-03-05
关于STM32WL LSE 添加反馈电阻后无法起振的...
时间:2026-03-05
如何直观地判断两级放大器的零点位置呢?
时间:2026-03-05
时序分析基本概念介绍<wire load model&...
时间:2026-03-05
电子元器件解析—电阻
时间:2026-03-05
3PEAK高压零漂放大器契合精密应用
时间:2026-03-05
助力绿色5G数字式电流和功率监测芯片-TPA62...
时间:2026-03-05
瞬间抑制二极管(TVS)/瞬间抑制二极管(TVS)是...
时间:2026-03-04
什么是霍尔传感器
时间:2026-03-05
半导体材料的主要种类有哪些?
时间:2026-03-04
高级封装,高级封装是什么意思
时间:2026-03-04
数字比较器,数字比较器是什么意思
时间:2026-03-04
常用整流二极管型号大全
时间:2026-03-04
S/HS固态继电器原理简介
时间:2026-03-04
稳压二极管的选用和代换
时间:2026-03-04
TVS器件的电特性有哪些
时间:2026-03-04
TVS二极管的分类/应用,TVS二极管的特点/选用...
时间:2026-03-04