自己找了一些cgi方面的资料,还是不能完全理解。
谁能结合web发展的历史,说一说cgi和web服务器(APACHE,iis)还有php的关系。

解决方案 »

  1.   

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

  2.   

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

  3.   

    通常情况下,当web服务器接收到来自于浏览器的文件请求时,就把浏览器请求的文件发送给浏览器,并告诉浏览器发送的文件的类型。但是,如果浏览器请求的不是一个文件,即URL指向的是一个程序(或脚本),则Web服务器将首先执行这个程序,然后再将程序产生的输出结果像文件一样发送给浏览器。任何遵从CGI标准的、由Web服务器执行的、能从Web服务器接收信息或发送信息给Web服务器的程序叫做CGI程序。CGI程序与所用的Web服务器无关,在任何Web服务器上都可执行(任何特定的web服务器上都能执行).
      

  4.   


    这个图片很简单,但是很能说明问题cgi只是一个规范,没有一个实际的东西(或程序)叫cgi。简单来说,cgi规定web server会向后边的(支持cgi)应用程序输入什么,并且能处理应用程序的那些输出。