您的位置:首页 >> Web开发 >> CGI技术 >> 正文
CGI技术 RSS
 

CGI的现在与未来

http://www.rdxx.com 06年10月12日 00:00 我要投稿

关键词: 未来 , CGI

  从1997年接触CGI以后,我就发现我渐渐的喜欢上了它,当时我国还是HTML 的时代,好的动态网站不多。其中由网易开发的163电子邮局,更让我喜欢CGI。在当时 CGI 这个名词在中国的网络上出现的频率少之又少,ASP刚刚浮出水面,更听不到 PHP 这个现在无人不晓的程序语言。就在今年,PHP好像一夜间就侵袭整个地球。在中国的网站到处可以见到以.PHP结尾的URL,PHP的贴子,PHP的文章和程序代码。而你几个月前,还看到某个网站在招聘CGI/PERL程序员的时候,今天却换成了PHP。一时间我的大脑膨胀的不得了,我不知道我是否应该放弃CGI/PERL,去学习PHP。我在论坛做了很久的CGI/Perl版主,起初当时还没有听说PHP这个脚本语言,几个月后出现了PHP版,它以迅雷不及掩耳之势迅速追赶一切的一切,几乎成了当时的焦点。而批评、蔑视和诋毁CGI/Perl文章的也逐渐多了起来。写了3年的CGI/Perl程序,今天突然被称为速度慢、耗费系统资源和语言复杂等种种原因好像变成了程序中的垃圾。因此,我在此的犹豫不决,让我更多的了解了CGI、ASP、API和PHP这四种WEB上最常见的语言。

  在CGI中,有众多语言,包括:C/++、Perl、TCL、Basic等。其中由于Perl的易编译调试、移植性颇强。几乎成了CGI的标准,或代言词。每每当人们提到CGI的时候,你必然会想到PERL。前些月人们还在CGI与ASP之间的争执,但实事证明了ASP并不是最好的网络语言,它的安全性令人担忧,它的移植性更令人头疼。面对着抄得沸沸扬扬免费的Linux,你只能感到无奈,只好掏出腰包给微软来换取新的Windows。PHP和 ASP 一样都是被称为“可嵌入式”的程序脚本语言和强大的数据处理能力。并大大贬低了CGI/PERL在此的用处。在一篇介绍 PHP 的文章中这样说:“用Perl/C等写的CGI脚本是一种“非嵌入式”的服务器端脚本,因为它是一个单独的程序,

  而不是嵌在HTML文档中再通过另一个程序解释替换。例如,下面的Perl程序:

 print "Content-type:text/HTMLnn";
 print <  
 
 HeadofHTML
 print " aaa";
 print "";

  在这个脚本中,它的确是非嵌入式的,但是我们要了解到是,早在公元1996年8月份,可嵌入是的CGI脚本程序已经开发成功,它就是ePerl。因为它并不是CGI/Perl的主要功能,只有国外一些网站在使用,在国内很少会知道。它 PHP 一样有着可嵌入是的功能。一个普通Perl的例子:

 print "foon";
 print "barn";
 print “HELLO WORLD”;
 print "baz n";
 print "quuxn";

采用ePerl 以后:

 foo
 bar
 < ? print “HELLO WORLD”; !>
 baz
 quux

而PHP:

 foo
 bar
 
 baz
 quux


  从上面三个里之中,我们可以看出,Perl和 PHP一样都具有嵌入的功能,当然你非要说 echo 比 print 少一个字母我也没有办法:)另一个是embPerl,embPerl在和 ePerl很多方面都很相像。它们的主要不同在于ePerl不是HTML专用的,而embPerl是专门用于HTML的。EmbPerl提供了一些元命令来完成特殊任务,像填充 HTML表等等。用了特殊的方法解释一些HTML标记。但是学习新的语法比较费劲,不过ePerl它和Perl没有什么区别,如果需要用于一般目的的嵌入Perl 方案,ePerl更佳。而EmbPerl在特殊的时候更为出色。在使用eperl和EmbPerl前必须安装它们的模块。这里介绍ePerl在Unix类型系统中的安装方法:

  首先到:www.engelschall.com/sw/eperl/ 下载相应的ePerl模块,在eperl源目录下面依次输入:perl Makefile.pl、make、make test、make install。在以SSI形式使用ePerl的时候,这些命令将安装在 Apache::Perl 模块。修改httpd.conf文件 ,

 Location /eperl/>
 SetHandler perl-script
 PerlHandler Apache::ePerl
 


  CGI/Perl的最大致命弱点,即人们说所的速度和

上一页 下一页


 
 
标签: 未来 , CGI 打印本文
 
 



Valid XHTML 1.0 Transitional
Copyright ©2005 - 2008 Rdxx.Com,All Rights Reserved
收藏本页
收藏本站