分析輸入url到頁面返回的過程

1. 輸入url

2. 瀏覽器查找域名的IP地址

(DNS查找過程如下:

瀏覽器緩存 – 瀏覽器會緩存DNS記錄一段時間。 有趣的是,操作系統沒有告訴瀏覽器儲存DNS記錄的時間,這樣不同瀏覽器會儲存個自固定的一個時間(2分鐘到30分鐘不等)。
系統緩存 – 如果在瀏覽器緩存裏沒有找到需要的記錄,瀏覽器會做一個系統調用(windows裏是gethostbyname)。這樣便可獲得系統緩存中的記錄。
路由器緩存 – 接着,前面的查詢請求發向路由器,它一般會有自己的DNS緩存。
ISP DNS 緩存 – 接下來要check的就是ISP緩存DNS的服務器。在這一般都能找到相應的緩存記錄。
遞歸搜索 – 你的ISP的DNS服務器從跟域名服務器開始進行遞歸搜索,從.com頂級域名服務器到Facebook的域名服務器。一般DNS服務器的緩存中會有.com域名服務器中的域名,所以到頂級服務器的匹配過程不是那麼必要了。

)

3. 瀏覽器給web服務器發送一個HTTP請求

GET 這個請求定義了要讀取的URL: “http://facebook.com/”。
瀏覽器自身定義 (User-Agent 頭), 和它希望接受什麼類型的相應 (Accept and Accept-Encoding 頭). Connection頭要求服務器爲了後邊的請求不要關閉TCP連接。
請求中也包含瀏覽器存儲的該域名的cookies。

4. 服務的永久重定向響應(可選)

5. 瀏覽器跟蹤重定向地址(可選)

6. 服務器“處理”請求

7. 服務器發回一個HTML響應

8. 瀏覽器開始顯示HTML

9. 瀏覽器發送請求獲取嵌入在HTML中的對象

10. 瀏覽器發送異步(AJAX)請求

參考的大神的文章:

http://www.lxway.com/149441682.htm
http://fex.baidu.com/blog/2014/05/what-happen/

發佈了81 篇原創文章 · 獲贊 13 · 訪問量 14萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章