1 / 4
文档名称:

使用python开发cgi应用介绍.doc

格式:doc   大小:39KB   页数:4页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

使用python开发cgi应用介绍.doc

上传人:sssmppp 2019/8/20 文件大小:39 KB

下载得到文件列表

使用python开发cgi应用介绍.doc

文档介绍

文档介绍::..使用Python开发CGI应用介绍我没有经历过CGI非常火的年代,也一直没有机会了解CGI开发web应用的开发过程,直到最近听一位室友很藐视地说QQ居然还在用CGI来开发口己的应用,于是心生出了想了解CGI的想法,于是经过一些学****和调研,也弄清楚了一些问题,,,CGI在web服务器处理请求中的角色关系如下图:2CGI在其中扮演的是在web服务器和特定语言解释器之间输入输出的协议的角色,每个來B用户的请求,web服务器都会唤起特定语言解释器的命令行(例如Python),CGI会作为一种约定來将web服务器获得的请求数据(如url,postdata)等,有选择地作为命令行参数来输入到解释器的命令行中(标准输入),解释器根据输入构造出特定的html作为标准输出,此时CGI又会对输出作额外的处理,如加入特定的header(mimetype,cookie等)返冋给web服务器,继而返冋给用/'(web服务器可能会作额外的处理).,各种主流的web服务器都支持,如apache,1IS等,那么从上面的处理流程中我们会发现其中的几个主要缺点:,祁需要新创建一个解释器的进程,而进程的创建通常都是比鮫昂贵的(expensive)2•而且,对于脚本语言,,因为在cgi脚本中都是手动地处理html所以更容易引起代码注入(当然更多地取决于程序员本身)使用Python來开发简单的CGI应用环境如下:(我的是/etc/apache2/),加入下面一行:AddHandlercgi・script・,():#!/usr/bin/envpythonprintContent-Type:text/html#HTMLisfollowingprint#blankline,endofheadersprintHelloCGI!需耍注意的是:一个CGI脚本由2部分组成,第一部分是输illheader,#!/usr/bin/envpython这行代码,是说明执行本脚本所用的程序(这是shell的相关知识)■关于框架如果你弄清楚了上而的示例,你就能够明口各种web框架(django,cakephp等),都只是简化和封装了一些处理的方式,本质述是类似于CGI的处理方式,即l)header2)(Hello,和上述是完全相同的.(HttpResponse默认使用text/html)关于