一 輸入URL
例如輸入baidu.com
二 域名解析及流程
1. 瀏覽器緩存:瀏覽器可能有緩存百度的DNS記錄,若沒有轉(zhuǎn)至下面。
2. 系統(tǒng)緩存:從Hosts文件查找是否有baidu.com和對應IP,若沒有轉(zhuǎn)至下面。
3. 路由器緩存:一般路由器也會緩存域名信息,若沒有轉(zhuǎn)至下面。
4. ISP DNS緩存:例如到電信的DNS上查找緩存,若沒有轉(zhuǎn)至下面。
5. 如果都沒有找到,則向根域名服務器查找域名對應IP,根域名服務器把請求轉(zhuǎn)發(fā)至下一級,直至找到IP。
三 服務器處理
web服務器接收用戶的請求,交給網(wǎng)站代碼,或者接受請求反向代理到其他web服務器。

服務器處理流程圖
四 網(wǎng)站處理流程

網(wǎng)站處理流程圖
五 瀏覽器處理
HTML字符串被瀏覽器接收后被一句句讀取解析:
- 解析到link標簽后重新發(fā)送請求獲取css
- 解析到script標簽后發(fā)送請求獲取 js,并執(zhí)行代碼
- 解析到img標簽后發(fā)送請求獲取圖片資源
六 網(wǎng)頁繪制
瀏覽器根據(jù)HTML和CSS計算得到渲染樹,繪制到屏幕上js會被執(zhí)行。