從瀏覽器中輸入一個域名地址,咱們會經歷哪些過程,這篇文章不會去細化到每個過程的具體實現,後面的文章會陸續告訴你。那麼咱們應該關注哪些東西呢?瀏覽器==》網絡==》服務器 ==》瀏覽器css
http:// www. polarisjack.top /blog/webDetail ?id=1 協議名稱 服務器名 域名 資源路徑 參數
瀏覽器客戶端解析好咱們輸入的地址之後,解析出域名,再根據域名解析出IP地址html
將域名解析成服務器的IP地址這個步驟是由DNS服務器完成的,首先客戶端根據你輸入的域名去找瀏覽器dns緩存是否有對應的ip,若是沒有會去尋找本地的hosts文件(windows系統dns緩存),檢查文件中是否有域名和IP的對應關係。若是有,則根據這個IP地址創建鏈接。若是沒有,再去DNS服務器尋找。
具體詳情可參加另一篇博客:瀏覽器的域名解析web
找到目標IP地址之後,客戶端主動嘗試與服務器進行鏈接,三次握手。第一次是客戶端主動鏈接服務器,此時服務器知道客戶端須要創建鏈接了。第二次是服務器到客戶端,此時客戶端知道服務器收到鏈接請求了。第三次是客戶端到服務器,此時服務器知道客戶端收到了本身的迴應。到這裏,就認爲客戶端與服務器已經創建鏈接了。
具體詳情可參考另一篇博客:TCP的三次握手和四次揮手。windows
服務器根據客戶端發送的請求,根據後臺服務邏輯作出相應的響應
具體詳情可參考另一篇博客:http瀏覽器
客戶端根據服務響應獲得後臺服務響應的數據,由於此處爲瀏覽器中輸入域名的狀況,假設後臺返回的是一個普通的html頁面,瀏覽器獲得此html頁面之後會進行解析。緩存
渲染引擎解析html是從上到下解析,渲染引擎解析html的過程當中,把標籤內容轉化爲dom節點,映射成爲DOM樹。
具體詳情可參加另一篇文章:瀏覽器工做原理服務器
渲染引擎在解析html的過程當中,遇到外部資源(如:css、js),會請求外部資源網絡
渲染引擎把html映射成爲DOM樹,根據加載的css資源,構建爲render樹,再佈局爲render樹,最後繪製render樹,經過呈現引擎展現給用戶。
渲染引擎解析html的過程當中,把標籤內容轉化爲dom節點,若是遇到css文件或者style標籤,會把這些樣式和dom節點構建成另一棵render樹,成型的幾何結構。dom