(本來是想找個JAVA開發的,結果碰到個問了我數據結構和計算機網絡的面試官,頭大,現在做一個學習)
(原文轉自 :http://igoro.com/archive/what-really-happens-when-you-navigate-to-a-url/ 中文翻譯就不知道是哪位大神了)
PS:本文僅供個人學習總結。
- 用戶輸入一個新的網址,例如facebook.com
- 瀏覽器通過訪問的域名查找其IP地址。
- 域名哪裏來呢?通過DNS查找
- DNS查找包括: 1,系統緩存。2,路由器緩存。3.檢查ISP緩存DNS的服務器,4,遞歸搜索 – 你的ISP的DNS服務器從跟域名服務器開始進行遞歸搜索,從.com頂級域名服務器到Facebook的域名服務器。一般DNS服務器的緩存中會有.com域名服務器中的域名,所以到頂級服務器的匹配過程不是那麼必要了
(ISP服務,之前校園網衝突的時候(學校無法使用路由器,都是當作交換機用的,爲了保證一人一網,),就要取消掉這個服務,原理不太懂,先記着。)PS:一個地址可以對應多個IP,舉例來說,Facebook.com實際上就對應了四個IP地址。 - 瀏覽器給web服務器發送一個HTTP請求。
- web服務器的永久重定向響應
- 瀏覽器跟蹤重定向地址
- 服務器處理請求
- 服務器返回一個HTML響應
- 瀏覽器開始顯示HTML
- 瀏覽器發送獲取嵌入在HTML中的對象(在瀏覽器顯示HTML時,它會注意到需要獲取其他地址內容的標籤。這時,瀏覽器會發送一個獲取請求來重新獲得這些文件。比如內嵌的CSS和JS)