CGI相关介绍
一、CGI?簡介
··CGI?是?Common?Gateway?Interface?的?簡?稱?。?其?主?要?的?功?能?是?在
?WWW?環?境?下?,?藉?由?從?客?戶?端?傳?遞?一?些?訊?息?給?WWW?Server?,?
再由?WWW?Server?去?啟?動?所?指?定?的?程?式?碼?來?完?成?特?定?的?工?作?
。所?以?更?明?確?的?說?,?CGI?僅?是?在?WWW?Server?上?可?執?行?的?程?式
?碼,?而?她?的?工?作?就?是?控?制?訊?息?要?求?而?且?產?生?并?傳?回?所?需
?的文?件?。?
二、關于?#!/usr/bin/perl
··在PERL?CGI中,第一行必須是服務器上PERL解釋器的位置,一般是#!/usr/b
in/perl,注意,前面的#!不能去掉,這個如有不明,要向管理員詢問。如果是在
WIN95/NT的機上裝了PERL解釋器(如ActivePerl、Perl?For?Win32),在CGI中不
用專門定義PERL解釋器位置了,就保留#!/usr/bin/perl就行了,或者如果%path
%環境變量中有PERL的路徑的話,就寫#!perl也可以。
三、關于CGI上傳的方式
··上傳CGI文件一定要用ASCII方式,不然執行時會出現500?Internal?Server?
Error的出錯提示,許多FTP軟件的AUTO上傳方式里關于*.CGI、*.PL的上傳方式都
定義了BINNARY方式,一定要設為ASCII方式上傳或在ASCII?FILES的定義中添加*
.CGI、*.PL的定義。特別地,在WIN95/NT中不用改CGI、HTML、目錄的屬性。
四、關于CGI程序的屬性
··在Unix?Like的服務器中(95/NT除外),CGI程序的屬性一定要設為可執行(
755),才能正常執行,而與CGI有關的HTML文件、數據文件、目錄等,如要被CG
I程序寫入的,一定要設為可寫(666)。那么,什么是755屬性,什么是666屬性
呢?
在Bullet?Proof?FTP軟件中,在遠程文件或目錄上用MOUSE右鍵按一下,
在屬性一項,有OWNER、GROUP、?PUBLIC?三項
OWNER?GROUP?PUBLIC??說明?
Read?Read?Read?此項如選中,值為4
?
Write?Write?Write?值為2?
?
Execute?Execute?Execute?值為1?
?
屬性755
OWNER?下的READ、WRITE、EXECute都要選中,它們的值加起來等于7。
GROUP?下的READ、EXECute選中,值加起來等于5
PUBLIC下的READ、EXECute選中,值加起來等于5
這樣就是755了,明白了嗎?那么666不用我說了。
五、關于絕對路徑和相對路徑
··絕對路徑就是你的主頁上的目錄在硬盤上真正的路徑,相對路徑其實就是UR
L。
六、關于PERL?CGI程序調試的簡單方法
··如果在自已的PWIN95/98/NT系統裝了WEB?SERVER(如APACHE)和PERL解釋器
(如ActivePerl)后,調試PERL?CGI程序就較方便,容易發現錯誤。如果在Web?
Server?中出現500?Internal?Server?Error,可進入?MS-DOS窗口,再轉到該CGI
的目錄,打?perl??文件名.cgi?就可以根據出錯提示判斷錯誤在哪
··CGI?是?Common?Gateway?Interface?的?簡?稱?。?其?主?要?的?功?能?是?在
?WWW?環?境?下?,?藉?由?從?客?戶?端?傳?遞?一?些?訊?息?給?WWW?Server?,?
再由?WWW?Server?去?啟?動?所?指?定?的?程?式?碼?來?完?成?特?定?的?工?作?
。所?以?更?明?確?的?說?,?CGI?僅?是?在?WWW?Server?上?可?執?行?的?程?式
?碼,?而?她?的?工?作?就?是?控?制?訊?息?要?求?而?且?產?生?并?傳?回?所?需
?的文?件?。?
二、關于?#!/usr/bin/perl
··在PERL?CGI中,第一行必須是服務器上PERL解釋器的位置,一般是#!/usr/b
in/perl,注意,前面的#!不能去掉,這個如有不明,要向管理員詢問。如果是在
WIN95/NT的機上裝了PERL解釋器(如ActivePerl、Perl?For?Win32),在CGI中不
用專門定義PERL解釋器位置了,就保留#!/usr/bin/perl就行了,或者如果%path
%環境變量中有PERL的路徑的話,就寫#!perl也可以。
三、關于CGI上傳的方式
··上傳CGI文件一定要用ASCII方式,不然執行時會出現500?Internal?Server?
Error的出錯提示,許多FTP軟件的AUTO上傳方式里關于*.CGI、*.PL的上傳方式都
定義了BINNARY方式,一定要設為ASCII方式上傳或在ASCII?FILES的定義中添加*
.CGI、*.PL的定義。特別地,在WIN95/NT中不用改CGI、HTML、目錄的屬性。
四、關于CGI程序的屬性
··在Unix?Like的服務器中(95/NT除外),CGI程序的屬性一定要設為可執行(
755),才能正常執行,而與CGI有關的HTML文件、數據文件、目錄等,如要被CG
I程序寫入的,一定要設為可寫(666)。那么,什么是755屬性,什么是666屬性
呢?
在Bullet?Proof?FTP軟件中,在遠程文件或目錄上用MOUSE右鍵按一下,
在屬性一項,有OWNER、GROUP、?PUBLIC?三項
OWNER?GROUP?PUBLIC??說明?
Read?Read?Read?此項如選中,值為4
?
Write?Write?Write?值為2?
?
Execute?Execute?Execute?值為1?
?
屬性755
OWNER?下的READ、WRITE、EXECute都要選中,它們的值加起來等于7。
GROUP?下的READ、EXECute選中,值加起來等于5
PUBLIC下的READ、EXECute選中,值加起來等于5
這樣就是755了,明白了嗎?那么666不用我說了。
五、關于絕對路徑和相對路徑
··絕對路徑就是你的主頁上的目錄在硬盤上真正的路徑,相對路徑其實就是UR
L。
六、關于PERL?CGI程序調試的簡單方法
··如果在自已的PWIN95/98/NT系統裝了WEB?SERVER(如APACHE)和PERL解釋器
(如ActivePerl)后,調試PERL?CGI程序就較方便,容易發現錯誤。如果在Web?
Server?中出現500?Internal?Server?Error,可進入?MS-DOS窗口,再轉到該CGI
的目錄,打?perl??文件名.cgi?就可以根據出錯提示判斷錯誤在哪
總結
- 上一篇: CGI简介
- 下一篇: shell脚本 如何切换当前目录