CGI的那点事
CGI代表Common Gateway Interface(通用網關界面),它使在網絡服務器下運行外部分應用程序(或網關)成為可能。CGI-BIN 目錄是存放CGI腳本的地方。這些腳本使WWW服務器和瀏覽器能運行外部程序,而無需啟動另一個原因程序。?
它是運行在Web服務器上的一個程序,并由來自于瀏覽者的輸人觸發。CGI是在HTTP服務器下運行外部程序(或網關)的一個接口,它能讓網絡用戶訪問遠程系統上的使用類型程序,就好像他們在實際使用那些遠程計算機一樣。?
CGI能夠讓瀏覽者與服務器進行交互,如果你曾經遇到過在網絡上填表或者進行搜索,就很有可能就是用的CGI。?盡管CGI易于使用,但是當大批人同時使用一個CGI應用程序是會反應較慢,網絡服務器 速度也會受到很大 影響。CGI應用程序的優點是可以獨立運行。?
CGI應用程序可以由大多數的編程語言編寫,如Perl(Practical Extraction and Report Language)、C\C++、Java 和Visual Basic等。不過對于那些沒有太多編程經驗的網頁制作人來說,實在是一個不小的難題。?
CGI應用程序的工作原理是這樣的:?
1.瀏覽器通過HTML表單或超鏈接請求指上一個CGI應用程序的URL。?
2.服務器收發到請求。?
3.服務器執行指定所CGI應用程序。?
4.CGI應用程序執行所需要的操作,通常是基于瀏覽者輸人的內容。?
5.CGI應用程序把結果格式化為網絡服務器和瀏覽器能夠理解的文檔(通常是HTML網頁)。?
6.網絡服務器把結果返回到瀏覽器中。?
有關CGI應用程序要注意的是:?
CGI應用程序運行在瀏覽器可以請求的服務器系統上,執行時需要使用服務器CPU時間和內存。如果有成千上萬的這種程序會同時運行,那會對服務器系統提出極高的要求。你要慎重考慮這個問題,以防止服務器系統崩潰。?不完善的CGI應用程序可能成為別人非法進人服務器系統的通道,有可能導致重要的資料被刪除或外泄。?
CGI應用程序主要的用途有以下幾種:?
根據瀏覽者填寫的HTML表單發送定制的答復。?
創建可單擊的圖像縮小圖。?
創建一個瀏覽者可以搜索內容的數據庫。?
提供服務器與數據庫的接口,并把結果轉換成HTML文檔。?
制作動態HTML文擋。?
如果一個CGI腳本可以在每臺計算機上做同樣的事情;編寫腳本就會變的很容易。不幸的是,CGI腳本依賴于服務器的操作系統,因此,對于非UNIX服務器來說,Prl(UNIX下編寫腳本的一個常用工具)腳本毫無用處。所以,你必須定制安裝你的CGI腳本。?
大多數服務器都提供CGI-BIN目錄,但是這還不夠。因為你應該擁有自己的CGI-BIN。這樣,你就能運行自己的腳本(而不是讓自己的系統去適應已存在于系統上的腳本)。因此,你的提供商應安裝CGI-BIN,且能夠幫助你編寫腳本?
總結
- 上一篇: Extjs 4.0.7 中模式窗口的CU
- 下一篇: 用户接口(User exit)