mkdir/usr/src/temp
CD/USR/SRC/TEMP
gzip'd穩定。 tar.gzip
tar xvl穩定
CD Perl-5.6.0
rm -f config.sh polycy.sh
SH配置-de
化妝品
進行測試
進行安裝
什麼是cgi = https://homepages.dcc.ufmg.br/~mlbc/cursos/internet/cgi/intro.htm
CGI服務網頁(html)= http://devfuria.com.br/miscellaneous/cgi-common-gateway-interface/
什麼是CGI/格式表格CGI = http://penta.ufrgs.br/edu/edu/forms/cgi.html
CGI資源到Java和JavaScript = http://penta.ufrgs.br/pesquea/pesquisa/gone/cap4.html
CGI真的很容易/編寫腳本CGI在Web上處理配方劑= https://www.jmarshall.com/easy/cgi/portugueses/
CGI-公共網關接口= https://web.fe.up.pt/~goii2000/m9/cgi.htm
CGI腳本中的IBM環境變量(參考)= https://www.ibm.com/docs/en-br/netcoolomnibus/8.1?
CGI -TCL/TK語言= http://www.c2o.pro.br/automacao/ar01s14.html
cgi forms = http://penta.ufrgs.br/edu/forms/cgi.html
cgi tutorial = https://www.w3.org/cgi/
公共網關接口(CGI)= https://en.wikipedia.org/wiki/common_gateway_interface
CGI(Wikipedia)= https://en.wikipedia.org/wiki/cgi
CGI簡介= http://homepages.dcc.ufmg.br/~mlbc/cursos/internet/cgi/intro.htm
什麼是CGI(公共網關接口),它做什麼?通用網關接口(CGI)是一項技術,它允許您通過參數與網關腳本和程序一起使用HTTP服務器腳本交互生成動態頁面。因此,腳本CGI是解釋這些參數並在處理它們後生成頁面的小程序。
但是CGI的使用不是很安全,請記住必須採取一些安全預防措施。下面將討論在解釋CGI的工作原理後,根據某些CGI計劃規則要採取哪些安全預防措施。
它如何工作?例子:
客戶端(瀏覽器)向CGI請求的URL請求URL,因此服務器執行CGI CGI與其他系統應用程序進行交互,從這些應用程序中恢復數據並將結果返回到服務器中,服務器將數據發送給客戶,該數據將結果發送給客戶,並在此處顯示結果並在此處輸入圖像描述。
為什麼要使用CGI?使用CGI,您的服務器可以訪問不可閱讀的信息(例如SQL數據庫),並用作它們之間的網關來生產客戶可以使用的東西。網關可用於各種目的,最常見的是IsIndex操縱和HTTP形式申請。
CGI使用示例:轉換HTML系統手冊頁,並將HTML結果發送給客戶。與WAIS和Archie數據庫的接口,將結果轉換為HTML並將結果發送給客戶。允許用戶通過HTML表單和CGI後的解碼器餵食其服務器。您可能正在通過網關編寫這些CGI,這些網關可以用任何允許您在系統中執行的輔助儀編寫的網關,例如:
C/C ++ Fortran Perl TCL Unix Shell Visual Basic Apple腳本CGI程序的主要規則是什麼? CGI程序或腳本是可以自己執行的可執行程序(這不是安全的方法)。因此,使用CGI程序時需要實現一些安全預防措施。
主要規則是:
腳本CGI必須位於服務器確定的腳本CGI的位置,或必須具有特殊後綴,將服務器配置為將其識別為合法的CGI腳本。大多數係統將CGI腳本存儲在稱為CGI-bin的HTTP服務器根目錄中,該目錄的配置方式只有某些可靠的用戶才能記錄下來。這避免了通過允許匿名遠程用戶執行系統中的任何內容,從而避免了明顯的安全問題。示例:/usr/local/apache/htdocs/cgi-bin
腳本可以收集其參數,默認輸入(通過鍵盤),環境變量或兩者兼而有之。
腳本應作為輸出給出,這是三種標準標頭類型之一,作為普通文本字符串。是三種類型:
context_type:內容類型是指服務器接受的任何類型的MIME數據。常見類型包括文本/HTML,文本/簡單和數據/GIF。由於瀏覽器/服務器無法從文件名的位置或後綴推導此類型的文件,因此此標題將告知瀏覽器哪種類型的數據期望以及如何使用它。
格式:類型/類型
位置:指向服務器上其他地方的文檔。允許您根據表單或環境變量發送的某些標準重定向文檔請求。
狀態:可用於在不向客戶發送新頁面的情況下運行腳本。它也可以用於向客戶發送錯誤消息或其他信息。
腳本必須由服務器配置的用戶可執行。 (有一個稱為“ Nobone”的特殊用戶,這是大多數Web服務器的默認用戶。您必須確保允許“ Nobode”用戶或服務器配置為工作的用戶運行腳本並在腳本可以使用的任何文件中讀取/寫入/寫入/寫入)。
CGI腳本中的更多安全詳細信息
如何獲取服務器信息?每次用戶請求與其CGI程序相對應的URL時,服務器都會實時運行。關於CGI的錯誤概念是,您可以為您的程序發送可選命令和參數的選項,例如:
命令%myprog -qa blorf
CGI將命令行用於其他目的。網關使用環境變量將其參數發送到程序。
如何將文檔發送給用戶? CGI程序可以返回大量文檔類型。您可以將圖像返回給用戶,HTML文檔或音頻剪輯。也可以參考其他文件。
客戶需要知道將收到哪種類型的文檔,以便他們可以正確介紹。很快,CGI程序必須通知服務器,即將發送哪種類型的文檔。
為了向服務器傳達正在返回的文檔的類型,無論是完整的文檔還是對另一個文檔的引用,CGI都需要出口處的小標頭。該標頭是ASCII文本,由單獨的線或襯裡組成,或通過托架返回(或兩者)和空白行組成。
例子:
帶有相應MIME類型的完整文檔。向客戶發送HTML文檔。
內容類型:文本/html
<Title> CGI腳本的HTML輸出</title>content-type:text/html位置:gopher://httprules.foobar.org/0
<title>對不起...移動</title>一種表格可能包含各種組件,例如輸入,複選框和無線電。
如何獲取形式數據?有兩種方法可用於訪問表單,獲取和發布。根據所使用的方法,您將以不同的方式收到數據。
GET方法:如果您的表單使用方法=“ GET”,則您的CGI程序將在Querry_string環境變量中接收編碼數據。例子:
登錄:密碼:帖子方法:如果您的表格使用方法=“ Post”,則您的CGI程序將接收STDIN標準輸入數據。服務器將不會在數據末端發送EOF。相反,您將必須使用content_length環境變量來確定從stdin讀取的數據量。
例子:
登錄:密碼:如何讀取環境變量將取決於將執行CGI程序的操作系統以及編寫其編寫的編程語言。在UNIX中運行的C程序可以使用char *getEnv(const char *name)函數;該變量被稱為參數,並在字符串中返回其值。
是舊技術嗎? CGI被認為是互聯網初期的專家在1993年由國家中心(用於超級計算申請)的討論的結晶,即Rob McCol,John Franks,Ari Lotonen,George Phillips和Tony Sanders之間的討論。是什麼才能使她認為是一種舊技術。
CGI規範1.1:RFC3875
儘管通常與CGI相關的語言是Perl,但CGI是為了獨立於所使用的語言而進行的。目前,如ASP.NET,PHP,Python和Ruby等技術繼續使用該規範。
他還有其他替代方案(哪個)? FastCGI:這是用於與Web服務器交互的二進制協議。
PSGI:這是Web服務器和Web Perl和Frameworks應用程序之間的接口,它允許您編寫可以作為自主服務器或使用CGI執行的應用程序。機架:為Ruby中的Web應用程序開發提供了模塊化且適應性的接口。
WRB:HTTP服務器技術類似於Oracle分佈式CGI。
接口:在系統或系統的兩個部分之間提供物理或邏輯連接的元素,無法直接連接。
Vision General在此處插入圖像的描述
通常,HTTP服務器具有一個目錄(文件夾),該目錄被指定為文檔集合(文件),可以將其發送到鏈接到該服務器的Web瀏覽器。 For example, if the web server has the Domain Name Example.com, and your document collection is stored in/USR/Local/Apache/HTDOCs in the local file system, then the web server will respond to a order for http://exemplo.com/index.html by sending to the browser the file /usr/local/pache/indocs/indoc.html.
CGI擴展了此系統,允許Web Server所有者在包含可執行腳本(或二進製文件)的文檔集合中指定一個目錄,而不是規定的頁面,這被稱為CGI目錄。例如,/usr/local/apache/htdocs/cgi-bin可以在Web服務器上指定為CGI目錄。如果Web瀏覽器請求指向CGI目錄中文件的URL(例如,http://exemplo.com/cgi-bin/printenv.pl),而不是簡單地將文件(/usr/local/apache/apache/htddocs/cgi-bin/printenv.pl prordied tecriped the ht pristiation the ht toters corters tot tot toters corters tots tots tots tots tots tots tots tots tots tots tots tots tots tots tots toters tots toters tots pstription。 Web瀏覽器。也就是說,腳本發送默認輸出的任何內容都傳遞給Web客戶,而不是在終端窗口中顯示在屏幕上。
腳本CGI的一般結構:數據閱讀和解碼(HTTP軟件包的信息字段);
數據處理(在數據庫上記錄信息,執行計算,恢復數據);
創建具有結果的網頁。
通過表格提交的CGI應用數據處理的示例;
用作與數據庫的接口,將HTML交易轉換為SQL並格式化為HTML獲得的答案,然後將結果發送給客戶;
將系統數據轉換為HTML並將結果返回給客戶;
創建個性化文件;
管理訪問計數器;
地圖處理。
傳輸方法HTTP協議使用各種數據處理和組織方法。提交表單數據的兩種最常用的方法是GET和帖子。兩種方法都將數據從瀏覽器傳輸到服務器,其中最大的區別是信息的方式傳遞給CGI程序:
得到
CGI通過GET方法調用
瀏覽器添加了“?”在操作屬性和編碼值中指定的URL;
http://exemplo.com/cgi-bin/registra.pl?login=guest
服務器在接收帶有查詢弦的URL時調用在URL第一部分(“?”之前)中標識的CGI程序,並在'?在query_string環境變量中('?'之後的URL中包含的諮詢字符串)。假設用戶在登錄字段中鍵入“訪客”,當單擊“提交”按鈕時,瀏覽器將發送到服務器。
GET請求標識要發送的文檔(CGI-BIN/RECORD.PL)。只要將服務器配置為CGI-BIN目錄中的所有文件作為CGI程序,它就會運行程序,而不是直接將文檔發送到瀏覽器,然後將字符串login ='guest'the query_string Environment在變量中。
CGI的程序員無法控制該程序將被調用的哪種方法。因此,通常編寫腳本以支持這兩種方法。
以形式引入的數據是發送到服務器的消息正文的一部分。
當GET方法通過環境變量傳遞信息時,該帖子將數據通過標準輸入(默認輸入,stdio.h)發送到CGI程序,作為在content_length環境變量中指定的長度字符串;
對服務器進行2個調用,其中一個與服務器聯繫,一個電話發送參數。換句話說,如果服務器使用帖子收到表單的形式,他知道他必須繼續“等待”其餘信息。
優點/缺點
GET的優點是,它允許您無需使用表單即可使用查詢訪問CGI程序,基本上我們正在傳遞程序的參數。示例:CGI程序
GET的最大缺點是缺乏安全性,並且有人注意瀏覽器或服務器不會欺騙超過允許字符數的信息。
帖子方法的最大優勢是要無限的查詢大小。對於通過POST方法的信息,CGI程序讀取標準輸入,因此不可能在不使用表單的情況下訪問CGI。
歷史考慮到創新發生的速度,CGI可以被認為是舊的,考慮到計算機的創建,可以說這是在中年。
1993年,國家超級計算應用程序中心(NCSA)在www-voltal電子郵件列表上撥打了命令行可執行文件的規範。但是,NCSA不託管規範。
其他開發人員已經採用了該規範,從那以後一直是Web服務器的標準。由肯·科阿(Ken Coar)主持的小組於1997年11月開始工作,以獲得最正式定義的NCSA定義。這項工作導致RFC3875指定了CGI 1.1版本。 RFC中明確提到的是以下納稅人:
Rob McCool(NCSA HTTPD Web服務器的作者)John Franks(Web Server GN的作者)Ari Lotonen(CERN HTTPD Web Server Developer)Tony Sanders(Plexus Web Server作者)George Phillips(不列顛哥倫比亞大學的Web服務器維護)。
作為替代方案,您可以考慮:
fastcgi
PSGI(Perl Web服務器網關接口)
機架(Web服務器接口)
WSGI(Web服務器網關接口)
CGI腳本的簡單示例
放兩個數字: