解析HTTP(超文字傳輸協議)
阿新 • • 發佈:2018-11-24
- HTTP
超文字傳輸協議為客戶端與伺服器端請求與應答的標準,是客戶端瀏覽器或其他程式與web伺服器之間的應用層通訊協議。
基於HTTP協議的資訊交換主要分為四個步驟:請求資訊、建立連線、傳送響應資訊、斷開連線。
HTTP為無狀態連線,可以通過cookies來解決無狀態問題,cookies相當於一個限時通行證,當客戶端第一次訪問時,給客戶端傳送cookies,當客戶端再次訪問時,伺服器則可以識別。
- 請求與響應的格式
均為明文。
- 常用的請求方法
GET:獲取一個URL指定的資源,即資源實體。
HEAD:獲取宇哥指定資源的資訊。
POST:向伺服器提交資料。
PUT:向伺服器提交資源。
DELETE:請求伺服器刪除Request-U RI表示的資源。
TRACE:網路跟蹤。
CONNECT:與PROX Y之間的連線管理。
OPTIONS:查詢伺服器支援的方法。
- 狀態碼
1×× 請求被接受,一般只在實驗環境下用。
2×× 成功,操作成功地被收到、理解和接受。
常見 : 200 伺服器成功返回網頁。
3×× 重定義,為了完成請求,必須採取進一步措施。
常見: 301/2 永久/臨時重定義。
304 NOT Modifined-未修改。
307 重定向中保持原有的請求資料。
4×× 客戶端錯誤,請求的語法有錯誤或者不能完全被滿足。
常見:404 請求的頁面不存在。
5×× 服務端錯誤,伺服器無法完成明顯有效的請求。
常見:500 伺服器內部錯誤。
503 伺服器暫時不可用。
- HTTP與HTTPS區別:
1、前者無需證書,後者需要SSL證書。
2、前者無法加密,後者對創術的資料進行加密,所以後者較前者更為安全。
3、前者標準埠為80,後者為443.
4、URL不同。
- HTTP的優化方案:
TCP複用、內容快取、壓縮、SLL加速、TCP緩衝。