第一步 輸入URL
URL是統(tǒng)一資源定位符,用于定位互聯(lián)網(wǎng)上的資源,包含http、https、ftp、file等協(xié)議
第二步 域名解析
對于http://xxx.com的URL,瀏覽器實際上不知道http://xxx.com到底是什么東西,需要查找該網(wǎng)站所在服務器的IP地址,才能找到目標。一方面,IP地址比較難以記憶,另一方面,一個網(wǎng)站可能對應多個IP,所以有了域名的存在。
域名解析流程
- 瀏覽器緩存
- 系統(tǒng)緩存:從Hosts文件(/etc/hosts)查找是否有該域名和對應IP
- 路由器緩存
- ISP(互聯(lián)網(wǎng)服務提供商) DNS緩存
- 如果都沒有找到,則向根域名服務器查找域名對應IP,根域名服務器把請求轉發(fā)到下一級,直到找到IP
第三步 服務器處理
服務器是一臺安裝系統(tǒng)的機器,常見的系統(tǒng)有Linux、windows server 2012,系統(tǒng)里安裝的處理請求的應用叫Web server。
第四步 瀏覽器處理
HTML字符串被瀏覽器接受后被一句句讀取解析,解析到link標簽后重新發(fā)送請求獲取css,解析到script標簽后發(fā)送請求獲取js,并執(zhí)行代碼,解析到img標簽后發(fā)送請求獲取圖片資源。
和五步 繪制網(wǎng)頁
瀏覽器根據(jù)htmlt和css計算得到渲染樹,繪制到屏幕上,js會被執(zhí)行。