天天看點

使用者從輸入URL到看到網頁發生了什麼?

一、在浏覽器位址欄輸入URL

二、浏覽器檢視緩存

1、如果資源未緩存,發起新請求

如果已緩存,檢驗是否處于有效期,資源處于有效期内直接提供給用戶端,否則與伺服器進行驗證。

2、檢驗有效期通常有兩個HTTP頭進行控制Expires和Cache-Control:

(1)HTTP1.0提供Expires,值為一個絕對時間表示緩存有效期日期

(2)HTTP1.1增加了Cache-Control: max-age=,值為以秒為機關的最大有效時間

三、浏覽器解析URL擷取協定,主機,端口,path

四、浏覽器組裝一個HTTP請求封包

五、浏覽器擷取主機ip位址(DNS查詢),浏覽器緩存、本地host檔案等。

六、建立TCP連結,包含三次握手

七、伺服器處理,如處理緩存資訊(304),資源檔案發送給用戶端

八、浏覽器渲染。解析HTML文檔,構件DOM樹,下載下傳資源,構造CSSOM樹,加載執行js腳本。

使用者從輸入URL到看到網頁發生了什麼?

2018.12.24 補充一個圖。

第一步、浏覽器若存儲了本位址會跳轉到另外一個位址時,直接跳轉。