HTTP協定簡介
超文本傳輸協定(HTTP,HyperText Transfer Protocol)是網際網路上應用最為廣泛的一種網絡協定。
HTTP是分布式、協作的、超媒體資訊系統的應用層協定。
HTTP協定(HyperText Transfer Protocol,超文本傳輸協定)是用于從WWW伺服器傳輸超文本到本地浏覽器的傳輸協定。它可以使浏覽器更加高效,使網絡傳輸減少。它不僅保證計算機正确快速地傳輸超文本文檔,還确定傳輸文檔中的哪一部分,以及哪部分内容首先顯示(如文本先于圖形)等。
HTTP是用戶端浏覽器或其他程式與Web伺服器之間的應用層通信協定。在Internet上的Web伺服器上存放的都是超文本資訊,客戶機需要通過HTTP協定傳輸所要通路的超文本資訊。HTTP包含指令和傳輸資訊,不僅可用于Web通路,也可以用于其他網際網路/内聯網應用系統之間的通信,進而實作各類應用資源超媒體通路的內建。
HTTP Method資源請求方法:
GET,HEAD,POST,PUT,DELETE,TRACE,OPTIONS,CONNECTION
Web伺服器主要的操作
1.建立連接配接--接收或者拒絕用戶端的連接配接請求
2.接收請求--通過網絡讀取HTTP的封包請求
3.處理請求--解析請求封包并做出相應的動作
4.通路資源--通路請求封包中的有關的資源
5.建構響應--使用正确的首部生成HTTP響應封包
6.發送響應--向用戶端發送生成的響應封包
7.記錄日志--當已經完成的HTTP事務記錄到日志檔案
HTTP封包分為:請求封包和響應封包
請求封包的文法:
<method> <request-Url> <version>
<headers>
<entity-body>
method--資源擷取方法
request-Url--請求的資源類型
version--請求資源的版本号
headers--HTTP協定的首部
entity-body--封包主體
響應封包文法:
<version> <status> <reason-phrase>
<headeras>
HTTP常見的狀态代碼:
1XX:純資訊
2XX :“成功”類型的資訊,請求内容成功的資訊類
3XX : 重定向類的資訊
301:永久性重定向,所請求的頁面已經轉移至新的url。
301:臨時性重定向,所請求的頁面已經臨時轉移至新的url。
304:用戶端有緩沖的文檔并發出了一個條件性的請求,伺服器告訴客戶,原來緩沖的文檔還可以繼續使用。
4XX:用戶端錯誤的資訊類
404 Not Found:伺服器無法找到被請求的頁面。
5XX : 服務端錯誤資訊
500 Internal Server Error:請求未完成。伺服器遇到不可預知的情況。
本文轉自 zhangguangyi 51CTO部落格,原文連結:http://blog.51cto.com/bosszhang/1681724