歡迎來到漳州若夢網絡科技有限公司

新聞動态News information

您的位置:首頁>新聞動态

新聞動态

News information
動态網頁的CGI實現技術
發表于2018/2/5

較早的動态網頁技術主要采用CGI,由于CGI技術難度較大(dà)、效率不高,後來又(yòu)相繼出現了如 ASP、PHP,JSP 等許多新的動态網頁技術。爲了對這些技術的發展過程能夠有所了解,并便于進行對比。

l.CGI的可移植性和可實現的功能

CGI(Common Gateway Interface,公用網關接口)技術是爲HTML語言提供的一(yī)種擴展手段,允許用戶編寫擴展應用程序來擴展服務器的功能,實現客戶 端與服務器的交互操作。CG1程序可以在多種平台上實現一(yī)定的功能,并且無需 做太大(dà)的更改,就可以輕松地完成平台之間的移植。任何支持CGI的服務器與其他專用服務器的擴展功能相比,主要的一(yī)個特點就是CGI程序的服務器可以用任何語言編寫,在任何平台上開(kāi)發,隻要它滿足CGI規範就可以。
 


由于CGI程序的大(dà)部分(fēn)處理對象是字符串,所以編寫CGI程序的語言最好采用Perl、C/C++語言,其他語言在編寫CGI程序時都存在不足之處,主要是因爲它們缺乏可以靈活應用的字符串處理函數。

HTML加上CGI可以實現以下(xià)www服務,這些功能是HTML本身無法實現的:
(1)  處理客戶端提交的表單數據;

(2) 創建Web頁面上大(dà)多數非靜态的内容;
 
(3) 在Web頁面和文檔中(zhōng)增加搜索功能;

(4) 創建交互應用,如聊天室、投票(piào)站、計數器等;
 
(5) 允許頁面動态生(shēng)成、生(shēng)成用戶定制的頁面等。
 
2.CGI的基本原理

CGI是一(yī)種通用的接口标準。CG1程序就是符合這種通用接口标準的、運行在Web服務器上的程序、它的工(gōng)作就是控制浏覽器的信息要求,産生(shēng)并傳回浏覽器所需的文件。

CGI是外(wài)部擴展應用程序與www服務器交互的一(yī)個标準接口。按照CGI标準編寫的外(wài)部 。
 
擴展應用程序可以處理客戶端(www浏覽器)輸入的 需要協同工(gōng)作的數據,從而完成客戶端與服務器的交互操作。例如,可以編寫CGI外(wài)部擴展程序來訪問外(wài)部數據庫,客戶端用戶可以通過CGI外(wài)部擴展程序和WWW服務器進行數據查詢并得到查詢結果。

下(xià)面通過對浏覽器提交表單數據的處理來了解以下(xià)CG1的基本原理。

(1) 當客戶端的用戶填寫好表單後,單擊“提交”按鈕向服務器發出HTTP請求(稱爲CGI請求)、實際上這裏的請求将發往

标記中(zhōng)的ACTION屬性标識的URL。

(2) Web服務器守護進程收到這個請求後,就會建立一(yī)個子進程(稱爲CGI進程)。該CGI子進程将CGI請求的有關數據設置成環境變量,在外(wài)部CGI程序與服務器之間 建立兩條數據通道(标準輸入/輸出),然後啓動URL指定的CGI程序,并與該子進程保持同步,以監測CGI程序的執行狀态。

(3) 子進程通過标準輸出流将表單處理結果傳遞給服務器守護進程,守護進程再将處理結果作爲應答消息回送到客戶端并用浏覽器顯示出來。

用最簡單的話(huà)來說,CG1标準就是通過STDIN(标準輸入)或環境變量來得到服務器的輸入信息,并通過STDOUT(标準輸出)向服務器輸出信息。
 
不過,用C或Perl開(kāi)發CGI程序時,網站設計技術人員(yuán)普遍感到難度大(dà)、修改複雜(zá),效率不高。因此人們不斷開(kāi)發出一(yī)些既容易學習掌握,又(yòu)能實現Web動态交互功能的新技術,目前發展得比較成熟的新技術主要有ASP,PHP和JSP。
QQ在線客服
電(diàn)話(huà)咨詢
0596-2916087