1、URl加載過程
2、詳解
-
DNS解析
將域名解析成IP地址,首先,會在 本地域名 服務(wù)器中查詢IP地址,如果沒有找到會向 根域名 服務(wù)器發(fā)送一個請求,如果根域名服務(wù)器也沒有找到,會向 頂級域名服務(wù)器com發(fā)送一個請求,依次類推下去,直到最后本地域名服務(wù)器得到IP地址并把它緩存到本地
解析過程: . -> .com -> google.com. -> www.google.com.- DNS緩存——為了減少請求次數(shù)
DNS 具體的查找過程包括:瀏覽器緩存,系統(tǒng)緩存,路由器緩存,IPS服務(wù)器緩存,根域名服務(wù)器緩存,頂級域名服務(wù)器緩存,主域名服務(wù)器緩存 - DNS負載均衡——DNS服務(wù)器會返回一個跟用戶最接近的點的IP地址給用戶
舉例:如果西安有服務(wù)器,北京也有,你處在西安,就會從西安的服務(wù)器上獲取
- DNS緩存——為了減少請求次數(shù)
TCP連接
第一次:建立連接時,客戶端向服務(wù)器發(fā)送
syn=i,并進入SYN_SENT狀態(tài),等待服務(wù)器確認第二次:服務(wù)器收到
syn,確認SYN(ack=i+1),同時也發(fā)送一個syn=j包,并進入SYN_RECV狀態(tài)-
第三次:客戶端收到服務(wù)器的
syn=j,ack=i+1后,繼續(xù)向服務(wù)器發(fā)送確認包ack=j+1,,客戶端和服務(wù)器進入ESTABLISHEC狀態(tài),三次握手完成,TCP連接建立成功
發(fā)送HTTP請求
主要發(fā)生在客戶端,HTTP請求報文是由三部分組成: 請求行, 請求報頭和請求正文。
常見的請求報頭有:
Accept, Accept-Charset, Accept-Encoding, Accept-Language, Content-Type, Authorization, Cookie, User-Agent服務(wù)器處理請求并返回HTTP報文
HTTP響應(yīng)報文也是由三部分組成:狀態(tài)碼, 響應(yīng)報頭和響應(yīng)報文
-
瀏覽器解析渲染頁面
- 瀏覽器是一個邊解析邊渲染的過程,首先瀏覽器解析HTML文件構(gòu)建DOM樹,然后解析CSS文件構(gòu)建渲染樹,頁面在首次加載時必然會經(jīng)歷reflow(回流)和repain(重繪)
連接結(jié)束
參考文章推薦:
從輸入URL到頁面加載發(fā)生了什么
從輸入 URL 到頁面加載完成的過程中都發(fā)生了什么事情?

