国产精品亚洲一二三区-亚洲自拍偷拍一区二区三区四区-精品人妻交换视频在线看-亚洲最大天堂av在线

關閉
當前位置:首頁 >> 資訊 >> 建站知識

動態(tài)網(wǎng)頁中CGI如何實現(xiàn)

來源:無錫網(wǎng)站建設阿凡達 瀏覽次數(shù):421 發(fā)表日期:2023-05-13

較早的動態(tài)網(wǎng)頁技術主要采用CGI,由于CGI技術難度較大、效率不高,后來又相繼出現(xiàn)了如 ASP、PHP,JSP 等許多新的動態(tài)網(wǎng)頁技術。為了對這些技術的發(fā)展過程能夠有所了解,并便于進行對比。

l.CGI的可移植性和可實現(xiàn)的功能

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

由于CGI程序的大部分處理對象是字符串,所以編寫CGI程序的語言*好采用Perl、C/C++語言,其他語言在編寫CGI程序時都存在不足之處,主要是因為它們?nèi)狈梢造`活應用的字符串處理函數(shù)。

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

(2) 創(chuàng)建Web頁面上大多數(shù)非靜態(tài)的內(nèi)容;
 
(3) 在Web頁面和文檔中增加搜索功能;

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

CGI是一種通用的接口標準。CG1程序就是符合這種通用接口標準的、運行在Web服務器上的程序、它的工作就是控制瀏覽器的信息要求,產(chǎn)生并傳回瀏覽器所需的文件。

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

下面通過對瀏覽器提交表單數(shù)據(jù)的處理來了解以下CG1的基本原理。

(1) 當客戶端的用戶填寫好表單后,單擊“提交”按鈕向服務器發(fā)出HTTP請求(稱為CGI請求)、實際上這里的請求將發(fā)往

標記中的ACTION屬性標識的URL。

(2) Web服務器守護進程收到這個請求后,就會建立一個子進程(稱為CGI進程)。該CGI子進程將CGI請求的有關數(shù)據(jù)設置成環(huán)境變量,在外部CGI程序與服務器之間 建立兩條數(shù)據(jù)通道(標準輸入/輸出),然后啟動URL指定的CGI程序,并與該子進程保持同步,以監(jiān)測CGI程序的執(zhí)行狀態(tài)。

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

用*簡單的話來說,CG1標準就是通過STDIN(標準輸入)或環(huán)境變量來得到服務器的輸入信息,并通過STDOUT(標準輸出)向服務器輸出信息。
 
不過,用C或Perl開發(fā)CGI程序時,網(wǎng)站設計技術人員普遍感到難度大、修改復雜,效率不高。因此人們不斷開發(fā)出一些既容易學習掌握,又能實現(xiàn)Web動態(tài)交互功能的新技術,目前發(fā)展得比較成熟的新技術主要有ASP,PHP和JSP。

聲明:本站部分內(nèi)容及圖片來自互聯(lián)網(wǎng),轉載是出于傳遞更多信息之目的,內(nèi)容觀點僅代表作者本人,如有任何標注錯誤或版權侵犯請與我們聯(lián)系(Email:2242241319@qq.com),我們將及時更正、刪除,謝謝。

免費答疑熱線

400-189-1319

添加微信

添加微信
添加微信
临城县| 阆中市| 满洲里市| 泾川县| 德格县| 枣阳市| 深圳市| 尼勒克县| 将乐县| 辰溪县| 巩义市| 江永县| 阿鲁科尔沁旗| 开封县| 科技| 平舆县| 永年县| 安图县| 板桥市| 千阳县| 彰化县| 康马县| 洛隆县| 靖安县| 郁南县| 古田县| 英山县| 科技| 桐梓县| 贵港市| 馆陶县| 周口市| 上栗县| 安新县| 万山特区| 连城县| 罗江县| 阳春市| 共和县| 嘉峪关市| 多伦县|