当前位置:主页   - 电脑 - 网站开发 - ASP.Net
CGI介绍及使用Python来开发CGI应用示例
来源:网络   作者:朱涛   更新时间:2011-04-09
收藏此页】    【字号    】    【打印】    【关闭

  引入

  我没有经历过 CGI 非常火的年代,也一直没有机会了解 CGI 开发web应用的开发过程,直到 最近听一位室友很藐视地说  QQ居然还在用CGI 来开发自己的应用, 于是心生出了想了解 CGI 的想法, 于是经过一些学习和调研,也弄清楚了一些问题,和大家分享下.

  CGI的介绍

  wikipedia中对 CGI 有比较详尽的描述, 基于自己的理解总结如下.

  首先,CGI在web服务器处理请求中的角色关系如下图:

CGI介绍及使用Python来开发CGI应用示例

  查看原图(大图)

  如上图, CGI 在其中扮演的是在web服务器和特定语言解释器之间输入输出的协议的角色, 每个来自用户的请求, web服务器都会唤起特定语言解释器的命令行(例如Python), CGI 会作为一种约定来将web服务器获得的请求数据(如url,post data)等,有选择地 作为命令行参数来输入到解释器的命令行中(标准输入), 解释器根据输入 构造出特定的html作为标准输出, 此时 CGI 又会对输出作额外的处理,如加入特定的 header(mimetype,cookie等)返回给web服务器,继而返回给用户(web服务器可能会作额外的处理).

  这就是一个完整的处理流程.

  CGI的缺点

  CGI 作为一种标准协议后,各种主流的web服务器都支持,如 apache, IIS 等, 那么从上面的处理流程中我们会发现其中的几个主要缺点:

其它资源
来源声明

版权与免责声明
1、本站所发布的文章仅供技术交流参考,本站不主张将其做为决策的依据,浏览者可自愿选择采信与否,本站不对因采信这些信息所产生的任何问题负责。
2、本站部分文章来源于网络,其版权为原权利人所有。由于来源之故,有的文章未能获得作者姓名,署“未知”或“佚名”。对于这些文章,有知悉作者姓名的请告知本站,以便及时署名。如果作者要求删除,我们将予以删除。除此之外本站不再承担其它责任。
3、本站部分文章来源于本站原创,本站拥有所有权利。
4、如对本站发布的信息有异议,请联系我们,经本站确认后,将在三个工作日内做出修改或删除处理。
请参阅权责声明