瀏覽器中輸入url(**)後,執行的全部過程:
網域名稱解析:客戶端瀏覽器通過dns伺服器將**解析成ip位址;
瀏覽器的dns快取;
系統的dns快取;
hosts檔案;網域名稱伺服器;
客戶端和服務端建立tcp連線:
通過ip位址和埠號(客戶端隨機選擇乙個埠,服務端採用80埠(http埠)監聽客戶端的請求),客戶端和服務端建立tcp連線;
三次握手:
客戶端傳送http請求:通過tcp套接字,客戶端向服務端發起http請求(請求報文—由請求行、請求頭、空行和請求資料組成);
請求行:客戶端的請求方式(get/head/post),請求的資源名稱url和使用的http協議的版本號;
請求頭:客戶端請求哪台主機,以及客戶端的一些資訊;
請求資料:當使用post, put等方法時,通常需要客戶端向伺服器傳遞資料。
服務端傳送http響應:通過tcp套接字將http響應傳送給客戶端(響應報文—由響應行、響應頭、空行和響應資料組成);
響應行:狀態碼,伺服器對http請求的處理結果;
響應頭:伺服器的基本資訊,以及客戶端如何處理資料;
響應資料:伺服器返回給客戶端的資料。
釋放tcp連線:若connection欄位為close,服務端主動關閉tcp連線,客戶端被動關閉tcp連線;若connection模式為keepalive,則連線會保持一段時間,該時間段內服務端還可以繼續接收http請求;
四次揮手:
客戶端解析html檔案:客戶端瀏覽器解析響應報文的狀態行,檢視請求是否成功的狀態**;解析響應頭部,得到html文件的位元組數和字符集;讀取響應資料html**,並請求html**中的資源,瀏覽器對頁面進行渲染後呈現給使用者。
相關鏈結
http協議常見狀態碼和字段
https和http的區別&https如何建立連線
HTTP請求與響應步驟
http請求與響應步驟 http請求和響應,說白了就是計算機之間的問答對話。http請求是提問者,http響應是回答者。詳細步驟如下所示。建立連線 先解析dns,例如把localhost變成ip 127.0.0.1 然後根據127.0.0.1和埠號8080 沒有埠號則使用預設的埠 建立socket。...
http請求,響應
http請求頭 accept 用於告訴伺服器,客戶機所支援的資料型別 accept charset 用於告訴伺服器,客戶機所採用的碼表 accept encoding 用於告訴伺服器,客戶機所支援的資料壓縮格式 accept language 用於告訴伺服器,客戶機的語法環境 host 用於告訴伺服...
HTTP請求步驟以及請求和響應的組成部分
什麼是http 下面從以下三個部分解釋http請求 一 http請求的步驟。二 http請求的四個部分組成。三 http響應的三個部分組成。一 http請求的步驟 大致分為七個,如下 建立tcp鏈結。web瀏覽器向web伺服器傳送請求命令。web瀏覽器傳送請求頭資訊。web伺服器應答。web伺服器傳...