
1.DNS
在浏覽器中輸入URL後,首先要進行DNS解析,DNS解析的順序為:
- 浏覽器緩存
- 本地hosts檔案
- 系統緩存
- 路由器緩存
- DNS伺服器疊代查詢
2.發送請求
通過DNS得到目标的IP位址後,通過TCP協定向伺服器發送請求即三次握手。
3.伺服器永久重定向響應
大多數的網站會将使用者通路的位址永久重定向,這主要與緩存和搜尋排名有關。
- 搜尋排名方面:例如www.test.com與test.com搜尋引擎認為是兩個網站,不會将排名合并。如果使用重定向将test.com定向到www.test.com搜尋引擎就會認為是一個頁面将排名資訊合并。
- 緩存方面:如果使用不同的位址,在緩存中出現好幾次,緩存友好性變差
4.跟蹤重定向位址
根據傳回新重定向位址,重新發送新的http請求
5.處理HTTP請求,傳回響應
- 建立連接配接:伺服器允許用戶端建立連接配接
- 接受請求:從網絡中讀取HTTP封包交給Nginx或者Apache進行規則比對
- 處理請求:根據方法,資源,首部和可選的主體部分對請求進行處理
- 通路資源:尋找存儲對象,通路封包中指定的資源
- 建構響應封包:建立有正确首部的HTTP響應封包
6.處理HTTP響應
- 發送響應:将響應會送給用戶端
- 記錄日志:将與已經完成的事務記錄在一個日志檔案中
7.浏覽器解析顯示
浏覽器得到頁面後會進行展示,如果還包含其他外部資源如圖檔、視訊等等則繼續請求其他資源。