CGI简介

公共网关接口

公共网关接口

CGI(Common Gateway Interface) 是WWW技术中最重要的技术之一,有着不可替代的重要地位。CGI是外部应用程序(CGI程序)与Web服务器之间的接口标准,是在CGI程序和Web服务器之间传递信息的规程。CGI规范允许Web服务器执行外部程序,并将它们的输出发送给Web浏览器,CGI将Web的一组简单的静态超媒体文档变成一个完整的新的交互式媒体。

Common Gateway Interface,简称CGI。在物理上是一段程序,运行在服务器上,提供同客户端HTML页面的接口。这样说大概还不好理解。

实际例子

现在的个人主页上大部分都有一个留言本。留言本的工作是这样的:先由用户在客户端输入一些信息,如名字之类的东西。接着用户按一下“留言”(到目前为止工作都在客户端),浏览器把这些信息传送到服务器的CGI目录下特定的cgi程序中,于是cgi程序在服务器上按照预定的方法进行处理。在本例中就是把用户提交的信息存入指定的文件中。然后cgi程序给客户端发送一个信息,表示请求的任务已经结束。此时用户在浏览器里将看到“留言结束”的字样。整个过程结束。

功能

绝大多数的CGI程序被用来解释处理来自表单的输入信息,并在服务器产生相应的处理,或将相应的信息反馈给浏览器。CGI程序使网页具有交互功能。

处理步骤

⑴通过Internet把用户请求送到web服务器。

⑵web服务器接收用户请求并交给CGI程序处理。

⑶CGI程序把处理结果传送给web服务器。

⑷web服务器把结果送回到用户。

优点

CGI可以为我们提供许多HTML无法做到的功能。比如 a.一个记数器 b.顾客信息表格的提交以及统计 c.搜索程序 d.WEB数据库,用Html是没有办法记住客户的任何信息的,就算用户愿意让你知道。用Html也是无法把信息记录到某一个特定文件里的。要把客户端的信息记录在服务器的硬盘上,就要用到CGI。这是CGI最重要的作用,它补充了Html的不足。是的,仅仅是补充,不是替代。

使在网络服务器下运行外部分应用程序(或网关)成为可能。CGI-BIN 目录是存放CGI脚本的地方。这些脚本使WWW服务器和浏览器能运行外部程序,而无需启动另一个原因程序。

它是运行在Web服务器上的一个程序,并由来自于浏览者的输入触发。CGI是在HTTP服务器下运行外部程序(或网关)的一个接口,它能让网络用户访问远程系统上的使用类型程序,就好像他们在实际使用那些远程计算机一样。

CGI能够让浏览者与服务器进行交互,如果你曾经遇到过在网络上填表或者进行搜索,就很有可能就是用的CGI。

尽管CGI易于使用,但是当大批人同时使用一个CGI应用程序是会反应较慢,网络服务器 速度也会受到很大 影响。CGI应用程序的优点是可以独立运行。

CGI应用程序可以由大多数的编程语言编写,如Perl(Practical Extraction and Report Language)、C\C++、Java 和Visual Basic等。不过对于那些没有太多编程经验的网页制作人来说,实在是一个不小的难题。

工作原理

1.浏览器通过HTML表单或超链接请求指向一个CGI应用程序的URL。

2.服务器收发到请求。

3.服务器执行指定所CGI应用程序。

4.CGI应用程序执行所需要的操作,通常是基于浏览者输入的内容。

5.CGI应用程序把结果格式化为网络服务器和浏览器能够理解的文档(通常是HTML网页)。

6.网络服务器把结果返回到浏览器中。

时间: 2024-11-17 04:46:17

CGI简介的相关文章

C语言编写cgi程序(上)

cgi简介: 公共网关接口CGI(Common Gateway Interface) 是WWW技术中最重要的技术之一,有着不可替代的重要地位.CGI是外部应用程序(CGI程序)与Web服务器之间的接口标准,是在CGI程序和Web服务器之间传递信息的规程.CGI规范允许Web服务器执行外部程序,并将它们的输出发送给Web浏览器,CGI将Web的一组简单的静态超媒体文档变成一个完整的新的交互式媒体.(百度介绍) CGI可以用任何语言编写,使用C语言编写CGI,可以提高系统的效率. 未完待续...

lamp基础之lamp(php-fpm)的实现

大纲: 1. CGI和fastcgi对比分析  2. 用三台主机以fast-cgi的方式实现lamp并安装wordpress 3. 对输出结果的详解 一.CGI和fastcgi对比分析   lamp 安装http和php的结合方式可以分为三种:     1.php作为http的模块     2.以cgi模式结合(极少使用)     3.以fastcgi模式结合 CGI 简介 CGI全称是"通用网关接口"(Common Gateway Interface),它可以让一个客户端,从网页浏览

FastCGI 介绍

LNMP 环境的基本请求流程 :当 LNMP 组合工作时,首先是用户通过浏览器输入域名请求 Nginx Web 服务,如果请求的是静态资源,则由 Nginx 解析返回给用户:如果是动态请求,那么 Nginx 就会把它通过 FastCGI 接口发送给 PHP 进行解析,如果这个动态请求要读取数据库数据,那么 PHP 就会继续向后请求 MySQL 数据库,以读取需要的数据,并最终通过 Nginx 服务吧获取的数据返回给用户,这就是 LNMP 环境的基本请求流程. CGI 简介 :最早的 Web 服务

嵌入式linux 项目开发(一)——CGIC编程

嵌入式linux 项目开发(一)--CGIC编程 一.CGIC简介 1.CGI简介 CGI(Common Gateway Interface)是外部应用扩展应用程序与WWW服务器交互的一个标准接口.按照CGI标准编写的外部扩展应用程序可以处理客户端浏览器输入的数据,从而完成客户端与服务器的交互操作.而CGI规范就定义了Web服务器如何向扩展应用程序发送消息,在收到扩展应用程序的信息后又如何进行处理等内容.通 过CGI可以提供许多静态的HTML网页无法实现的功能,比如搜索引擎.基于Web的数据库访

【我的技术我做主】Apache Httpd Web服务器详解

一.简介 Apache是世界使用排名第一的Web服务器软件.它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一.Apache HTTP服务器是一个模块化的服务器,源于NCSAhttpd服务器.Apache的特点是简单.速度快.性能稳定,并可做代理服务器来使用. Apache官网:http://apache.org/ Apache Httpd网站:http://httpd.apache.org/ Apache httpd Web服务器特性

关于嵌入式web服务器

1.boa的配置文件boa.conf Port 80 //服务访问端口 User 0 Group 0 ErrorLog /var/log/boa/error_log //错误日志地址 AccessLog /var/log/boa/access_log //访问日志文件 DocumentRoot /var/www //HTML文档的主目录 UserDir public_html // DirectoryIndex index.html //默认访问文件 DirectoryMaker /usr/li

Web之CGIC的介绍与使用20171229

一.CGIC简介 1.CGI简介 CGI(Common Gateway Interface)是外部应用扩展应用程序与WWW服务器交互的一个标准接口.按照CGI标准编写的外部扩展应用程序可以处理客户端浏览器输入的数据,从而完成客户端与服务器的交互操作.而CGI规范就定义了Web服务器如何向扩展应用程序发送消息,在收到扩展应用程序的信息后又如何进行处理等内容.通 过CGI可以提供许多静态的HTML网页无法实现的功能,比如搜索引擎.基于Web的数据库访问等等. CGI的主要功能: (1)解析数据,校正

Python核心编程 第3版 中文版pdf

[下载地址] <Python核心编程(第3版)>是经典畅销图书<Python核心编程(第二版)>的全新升级版本,总共分为3部分.第1部分为讲解了Python的一些通用应用,包括正则表达式.网络编程.Internet客户端编程.多线程编程.GUI编程.数据库编程.Microsoft Office编程.扩展Python等内容.第2部分讲解了与Web开发相关的主题,包括Web客户端和服务器.CGI和WSGI相关的Web编程.Django Web框架.云计算.高级Web服务.第3部分则为一

项目一. 移动物体监控系统

项目一. 移动物体监控系统 Sprint0-产品设计与规划 第1课-产品功能展示 我们在学校的时候,做项目开发,可能就是想到了哪里就做哪里.但是在实际公司的开发过程中,我们是要严格的按照公司的流程来进行的. 项目开发分成了准备阶段和开发阶段: 我们的最后效果就是,利用摄像头和音响完成连接,如图: 当有移动物体在摄像头面前移动时,摄像头能采集图像和视频,并且发出报警的声音.通过访问对应的局域网,我们可以通过网页访问,如下: 第2课-产品功能模型设计 第3课-Product Backlog规划 我们