欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

cgi到底是个什么东西

程序员文章站 2022-05-20 14:36:14
...
自己找了一些cgi方面的资料,还是不能完全理解。
谁能结合web发展的历史,说一说cgi和web服务器(APACHE,iis)还有php的关系。

回复讨论(解决方案)

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

版主能不能给个形象点的图,
或者打个比喻什么的。。

cig是一个协议,描述了web服务器(nginx、apache等)和应用程序网关(php、python等)之间的信息交换。

通常情况下,当web服务器接收到来自于浏览器的文件请求时,就把浏览器请求的文件发送给浏览器,并告

诉浏览器发送的文件的类型。但是,如果浏览器请求的不是一个文件,即URL指向的是一个程序(或脚本),则

Web服务器将首先执行这个程序,然后再将程序产生的输出结果像文件一样发送给浏览器。任何遵从CGI标准的、

由Web服务器执行的、能从Web服务器接收信息或发送信息给Web服务器的程序叫做CGI程序。CGI程序与所用的Web

服务器无关,在任何Web服务器上都可执行(任何特定的web服务器上都能执行).


这个图片很简单,但是很能说明问题

cgi只是一个规范,没有一个实际的东西(或程序)叫cgi。

简单来说,cgi规定web server会向后边的(支持cgi)应用程序输入什么,并且能处理应用程序的那些输出。

就是一套规范。

你要开个饭馆,但开饭馆需要一系列的手续,办照,进货渠道,租门脸,招员工这也可以算是一套规范,按照这套规范走,你才能开的起来。