1 回答

TA貢獻(xiàn)1859條經(jīng)驗(yàn) 獲得超6個(gè)贊
超文本傳輸協(xié)議(HTTP,HyperText Transfer Protocol)是互聯(lián)網(wǎng)上應(yīng)用最為廣泛的一種網(wǎng)絡(luò)協(xié)議。所有的WWW文件都必須遵守這個(gè)標(biāo)準(zhǔn)。設(shè)計(jì)HTTP最初的目的是為了提供一種發(fā)布和接收HTML頁(yè)面的方法。
HTTP是一個(gè)客戶(hù)端和服務(wù)器端請(qǐng)求和應(yīng)答的標(biāo)準(zhǔn)(TCP)??蛻?hù)端是終端用戶(hù),服務(wù)器端是網(wǎng)站。通過(guò)使用Web瀏覽器、網(wǎng)絡(luò)爬蟲(chóng)或者其它的工具,客戶(hù)端發(fā)起一個(gè)到服務(wù)器上指定端口(默認(rèn)端口為80)的HTTP請(qǐng)求。(我們稱(chēng)這個(gè)客戶(hù)端)叫用戶(hù)代理(user agent)。應(yīng)答的服務(wù)器上存儲(chǔ)著(一些)資源,比如HTML文件和圖像。(我們稱(chēng))這個(gè)應(yīng)答服務(wù)器為源服務(wù)器(origin server)。在用戶(hù)代理和源服務(wù)器中間可能存在 http和其他幾種網(wǎng)絡(luò)協(xié)議[1]多個(gè)中間層,比如代理,網(wǎng)關(guān),或者隧道(tunnels)。盡管TCP/IP協(xié)議是互聯(lián)網(wǎng)上最流行的應(yīng)用,HTTP協(xié)議并沒(méi)有規(guī)定必須使用它和(基于)它支持的層。 事實(shí)上,HTTP可以在任何其他互聯(lián)網(wǎng)協(xié)議上,或者在其他網(wǎng)絡(luò)上實(shí)現(xiàn)。HTTP只假定(其下層協(xié)議提供)可靠的傳輸,任何能夠提供這種保證的協(xié)議都可以被其使用?! ⊥ǔ?,由HTTP客戶(hù)端發(fā)起一個(gè)請(qǐng)求,建立一個(gè)到服務(wù)器指定端口(默認(rèn)是80端口)的TCP連接。HTTP服務(wù)器則在那個(gè)端口監(jiān)聽(tīng)客戶(hù)端發(fā)送過(guò)來(lái)的請(qǐng)求。一旦收到請(qǐng)求,服務(wù)器(向客戶(hù)端)發(fā)回一個(gè)狀態(tài)行,比如"HTTP/1.1 200 OK",和(響應(yīng)的)消息,消息的消息體可能是請(qǐng)求的文件、錯(cuò)誤消息、或者其它一些信息。 HTTP協(xié)議的網(wǎng)頁(yè)HTTP使用TCP而不是UDP的原因在于(打開(kāi)一個(gè))一個(gè)網(wǎng)頁(yè)必須傳送很多數(shù)據(jù),而TCP協(xié)議提供傳輸控制,按順序組織數(shù)據(jù),和錯(cuò)誤糾正。 通過(guò)HTTP或者HTTPS協(xié)議請(qǐng)求的資源由統(tǒng)一資源標(biāo)示符(Uniform Resource Identifiers)(或者,更準(zhǔn)確一些,URLs)來(lái)標(biāo)識(shí)。
添加回答
舉報(bào)