第一步:輸入URL
URL:統(tǒng)一資源定位符娶聘,用于定位互聯(lián)網(wǎng)上的資源煮剧。它具有http斥滤、https、ftp勉盅、file等協(xié)議佑颇。
第二步:域名解析
域名解析流程:
瀏覽器緩存--瀏覽器會緩存DNS記錄一段時間。
系統(tǒng)緩存--從Hosts文件查找是否有該域名和對應(yīng)IP草娜。
路由器緩存挑胸。
ISP DNS緩存--比如到電信的DNS上查找緩存。
如果都沒有宰闰,則向根域名服務(wù)器查找域名對應(yīng)IP茬贵,根域名服務(wù)器把請求轉(zhuǎn)發(fā)到下一級,直到找到IP议蟆。
第三步:服務(wù)器處理
服務(wù)器是一臺安裝系統(tǒng)的機器闷沥,常見的系統(tǒng)如Linux、Windows server 2012咐容。系統(tǒng)里安裝的處理請求的應(yīng)用叫Web Server(有Apache舆逃、Nginx、IIS、Lighttpd等)路狮。
請求發(fā)送給服務(wù)器虫啥,Web服務(wù)器接收到Request交給網(wǎng)絡(luò)代碼,或者接受請求反向代理到其他Web服務(wù)器奄妨。
第四步:網(wǎng)絡(luò)處理流程
MVC:模型(model)--視圖(view)--控制器(controller)涂籽。
第五步:瀏覽器處理
HTML字符串被瀏覽器接受后被一句句讀取解析(會有再請求過程)。
第六步:繪制網(wǎng)頁
瀏覽器根據(jù)HTML和CSS計算得到渲染樹砸抛,js也會被執(zhí)行评雌。