當你從瀏覽器地址欄中輸入URL回車後發生了什麼

此篇博客引用自一篇我認爲很經典的文章,在此附上文章的地址。英文原版
1. 我們在瀏覽器中輸入網址。
2. 瀏覽器查找域名對應的IP地址

DNS查找過程爲:
瀏覽器緩存->系統緩存->路由器緩存->ISP DNS緩存->遞歸搜索
遞歸搜索過程爲:從根域名服務器到頂級域名服務器到你查詢的域名服務器。

3. 瀏覽器打開TCP連接(默認端口爲80),向該IP的服務器發送一條HTTP請求,如果瀏覽器存儲了該域名下的cookie,那麼cookie也會放入http請求中
4. 服務器給瀏覽器進行一個301永久重定向響應。該IP對應的服務器很可能是代理服務器,比如你輸入“http://baidu.com”,而不是“http://www.baidu.com”,按道理這兩個網址對應的是同一個網頁,因此通過代理服務器的方式進行重定向相應,讓這兩個網址訪問的是同一個網頁。
5. 瀏覽器根據重定向地址再次進行HTTP請求。
6. 服務器分析HTTP請求,生成HTTP響應,將響應發給客戶端。
7. 瀏覽器收到響應內容之後,生成主頁框架,同時向服務端繼續發送請求,請求的內容是主頁裏的一些資源,比如說圖片、視頻等。
8. 對於靜態的頁面內容,瀏覽器通常進行緩存,對於動態的內容通常不緩存,緩存的時間也是有期限的。
9. 瀏覽器向服務器發送異步請求,因爲有些頁面顯示完成之後客戶端仍需要與服務端保持聯繫。
10. 整個過程結束之後,瀏覽器關閉TCP連接。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章