明輝手游網(wǎng)中心:是一個免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

CGI圖文說明教程(10)CGI 規(guī)范之4

[摘要]CGI 規(guī)范CGI腳本輸入規(guī)范  為了請求哪個有信息附在文件頭后面,比如HTTP POST或者PUT,信息將被發(fā)送到腳本的stdin中! 》⻊(wù)器將要發(fā)送CONTENT_LENGTH 字節(jié)到這個文件描述器中。這里記住它還會給出數(shù)據(jù)的CONTENT_TYPE。服務(wù)器有義務(wù)在腳本讀了CONTENT_L...
CGI 規(guī)范

CGI腳本輸入規(guī)范

  為了請求哪個有信息附在文件頭后面,比如HTTP POST或者PUT,信息將被發(fā)送到腳本的stdin中。

  服務(wù)器將要發(fā)送CONTENT_LENGTH 字節(jié)到這個文件描述器中。這里記住它還會給出數(shù)據(jù)的CONTENT_TYPE。服務(wù)器有義務(wù)在腳本讀了CONTENT_LENGTH的字節(jié)之后發(fā)送文件的結(jié)束標(biāo)識。


CGI 腳本輸出規(guī)范

  腳本發(fā)送它的輸出到stdout。這個輸出可以是有腳本產(chǎn)生的文檔,還可以是用于檢索輸出的服務(wù)器的指令。

以下是腳本命名的約定:

  通常,腳本產(chǎn)生輸出并發(fā)送回給客戶端。這樣做的好處是腳本不需要每一個請求發(fā)送一個完整的HTTP/1.0文件頭。有些腳本可以想避免服務(wù)器解析輸出的額外開銷,而直接通知客戶端。為了從其它腳本中辨認(rèn)出這些腳本,CGI要求如果腳本不想服務(wù)器解析它的文件頭,腳本的名字要以nph-開頭。在這個例子中,腳本的責(zé)任是返回一個響應(yīng)給客戶端的有效的HTTP/1.0(或者HTTP/0.9)。

以下解析文件頭:

腳本的輸出是以一個小文件頭開始的。這個文件頭包含了文本行,這個文本行和HTTP文件頭格式是一樣的,它是以一個空行來結(jié)束的。任何的文件頭(不是服務(wù)器指令)被直接發(fā)送給客戶端。當(dāng)前, 這個規(guī)范定義了三個服務(wù)器指令:

Content-type :這是一個你返回的文檔的MIME類型。

Location :它用于指定你想返回引用的服務(wù)器給文檔,而不是真正的文檔。如果這個的參數(shù)為URL,服務(wù)器件將重定向到客戶端。如果這個的參數(shù)是一個虛擬目錄,服務(wù)器將檢索指定的文檔就象客戶原來已經(jīng)請求那個文檔。?指令在這里將起作用,而#指令必須重定向到客戶端。

Status :它將用于給服務(wù)器一個HTTP/1.0狀態(tài)行以發(fā)送給客戶端。它的格式為nnn xxxxx,其中nnn是一個三位數(shù)的狀態(tài)碼,而xxxx是原因字符串,比如"Forbidden"。