客户支持
  首 页 域名注册  虚拟主机  营销通  网站推广  网站建设  企业邮局  优惠套餐  联系我们  汇款方式  
网站首页
客户支持首页
热门文(wén)章排行
更多(duō)... 
 
热门问题列表
首页 -> 客户支持
Cgi/Perl脚本语言 简介

查看次数:1446959   更新(xīn)时间:2014/6/27    
 

CGI简介:

   Cgi脚本以前是应用(yòng)非常广泛. 现在在Web方面的光辉逐渐被 Asp,Php,Asp.net 等专职的Web脚本所取代.

   CGI是Common Gateway Interface(通用(yòng)网关接口)的简写,它是一个Web服務(wù)器主机提供信息服務(wù)的标准接口,通过提供这样一个标准接口,Web服務(wù)器能(néng)够执行应用(yòng)程序并将它们的输出,如文(wén)字、图形、声音等传递给一个Web浏览器。一般来说,CGI标准接口的功能(néng)就是在超文(wén)本文(wén)档与服務(wù)器应用(yòng)程序之间传递信息。如果没有(yǒu)CGI,Web服務(wù)器只能(néng)提供静态文(wén)本或者连接到其它服務(wù)器。可(kě)以说这样毫不夸张地说,有(yǒu)了CGI,万维网才变得更為(wèi)实用(yòng),界面才变得更為(wèi)友好,信息服務(wù)才变得更為(wèi)丰富多(duō)彩。

   CGI是一个连接外部应用(yòng)程序到信息服務(wù)器(比如HTTP或者网络服務(wù)器)的标准。一个简单的HTML文(wén)档是无交互后台程序,它是静态的,也就是说它处于一个不可(kě)变的状态,即文(wén)本文(wén)件不可(kě)以变化。相反地,CGI程序是可(kě)以实时执行地,它可(kě)以输出动态的信息。

  举个例子吧,如果你想把服務(wù)器数据 ”挂到”万维网上,并允许世界各地的人可(kě)以访问它。基本上,就就需要创建一个CGI程序,它的执行将传递信息给数据库引擎,并且把解雇返回给用(yòng)户显示出来。这是一个网关的例子。 数据库例子是一个简单的思想,在实际应用(yòng)过程中更為(wèi)复杂。实际上没有(yǒu)什么不能(néng)挂到网络上面的。但是只有(yǒu)一件事情你必须记住:不管你的CGI程序是怎样,一定不能(néng)花(huā)太多(duō)的时间来处理(lǐ)。否则,用(yòng)户就做在奔腾机前面静静地等着浏览器的显示结果,这势必伤透了”奔腾的心”。

   CGI程序可(kě)以用(yòng)任何的语言来编写,并且可(kě)以在Windows/Linux 系统中执行:C/C++,PERL,Visual Basic 等等 实际 Php,Asp 等 也算是一钟Cgi脚本语言.实际上Cgi脚本语言出色的是Perl.

   采取什么的语言依靠你的系统支持什么语言而定的。如果你使用(yòng)过一个编程语言如C,你就会知道在运行程序之前必须对程序进行编译。如果你进入这个目录,你就会发现一些CGI程序的源代码。但是如果你使用(yòng)其中一种脚本语言,比如PERL、Asp,脚本就只需要放置在/cgi-bin目录中,因為(wèi)没有(yǒu)相关的源代码。许多(duō)设计人员喜欢使用(yòng)CGI脚本而不使用(yòng)编程语言,因為(wèi)脚本比需要编译的程序语言更容易调试、修改和维护。

Perl 语言简介:

  Perl是Practical Extraction and Report Language(实用(yòng)摘录和报告语言)的简称,非常优秀的CGI脚本语言,是由Larry Wall所发展的。其新(xīn)版本為(wèi)5.6.
   Perl的设计目标是帮助UNIX用(yòng)户完成一些常见的任務(wù),这些任務(wù)对于shell来说过于沉重或对移植性要求过于严格。
   Perl是按GNU Public License的形式分(fēn)发的,其实质是免费的,原先运行于UNIX和类UNIX系统,现在已可(kě)以方便地在OS/2,Windows 9x,Windows/NT等系统下运行。
   Perl是解释运行的,一般Perl程序的行需注明自己是一个Perl程序而不是shell程序,所以一般将下面一行语句:
   #! /usr/bin/perl
   作為(wèi)文(wén)件的行。

Perl的特性:

   "Perl语言在文(wén)本处理(lǐ)方面非常突出,它把不同的内容联成一个整體(tǐ)。对于这种脚本语言来说所有(yǒu)的那些不同的元素,看起来都是一样的。”——John Ousterhout,Tcl脚本语言的作者

  Perl即“Practical Extraction and Report Language”(实用(yòng)析取报表语言)。是的,比较粗,但是我想那就是你所得到的——如果你打算确信$HUNN NGOUS CORP并且使用(yòng)它的话。事实上,Larry Uall< Larry@wall org >(Perl的创立者)在Perl的帮助手册页里提出:“Perl实际上代表的是Pathologically Edectic Rubbish Lister,但不要告诉任何人我这样说过。”唔,他(tā)是Larry,对此我又(yòu)能(néng)再说些什么呢(ne)?

   Perl已经被广泛的认為(wèi)是“一种拥有(yǒu)各种语言功能(néng)的梦幻脚本语言”、“Unix 中的王牌工具”。以及其他(tā)的一些类似的称呼,这些都是赞誉之辞,Perl被用(yòng)来写单行脚本,快速执行程序,大的规划项目(Amazon.com的所有(yǒu)评论产品和控制系统,Netscape的内容策划管理(lǐ)和传送系统,人类整组基因工程的DNA排序以及计划管理(lǐ)等等)。还有(yǒu)数以百万计的令我们惊讶的各种各样的事情的高速程序。Perl还能(néng)够实现许多(duō)UNIX的公共系统工具的功能(néng)(提示:如果你正在學(xué)或必须學(xué)awk, sed, grep和 tr,我建议你以Perl来代替它们。所有(yǒu)的功能(néng),更快的执行效率,相信你将永遠(yuǎn)不会因為(wèi)它的性能(néng)发展太快而不适应它。)

  Perl允许你建立面向对象的程序。它也可(kě)以进行网络操作(例如socket等等),并且有(yǒu)良好的可(kě)移植性(一个写得好的脚本可(kě)以在Linux,BSD,Solaries,Dos,Win9x,NT,MacOS,OS/2, AnugaOS,VMS等操作系统中不需要任何修改的运行),编写和调试周期很(hěn)短——由于没有(yǒu)编译的要求,你只需将变化的部分(fēn)写出,就可(kě)以运行脚本。还有(yǒu)数目庞大的可(kě)适用(yòng)于执行任何一项任務(wù)的模块(即预建立Perl的例程),Comprehensive Perl Archiue Network (CPAN)就是每一个Perl程序员所能(néng)拥有(yǒu)的好的模块库之一。

总之: Perl 实际应用(yòng)范围不仅仅是Web脚本程序.实际在应用(yòng)程序和系统程序开发中都被广泛使用(yòng),实际现在Perl在Web方面的应用(yòng)慢慢被Php,Asp,Asp.net等脚本语言取代

一个简单的Perl程序

   就拿(ná)各类书籍常用(yòng)显示"Hello! Welcome!"程序来说吧。下面是其源程序:

   #! /usr/bin/perl
   print "你好! 欢迎光临网络教室! \n";

   这里的行说明了这是一个Perl程序,它也是Perl的注释,注释是从#开始至该行结束的所有(yǒu)文(wén)字。
   第二行是程序的可(kě)执行部分(fēn),这里只有(yǒu)一条print语句,如果你學(xué)过C语言,就能(néng)很(hěn)快掌握它。

 
[返 回]
厦门兰佳软件有(yǒu)限公司 idc.lancego.com (兰佳软件)