瀏覽器中輸入一個域名地址

從瀏覽器中輸入一個域名地址,咱們會經歷哪些過程,這篇文章不會去細化到每個過程的具體實現,後面的文章會陸續告訴你。那麼咱們應該關注哪些東西呢?瀏覽器==》網絡==》服務器 ==》瀏覽器css

簡單過程

一、瀏覽器解析url

http://        www.    polarisjack.top  /blog/webDetail   ?id=1
協議名稱        服務器名  域名                  資源路徑        參數

瀏覽器客戶端解析好咱們輸入的地址之後,解析出域名,再根據域名解析出IP地址html

二、瀏覽器根據解析獲得的域名獲取服務器的IP地址

將域名解析成服務器的IP地址這個步驟是由DNS服務器完成的,首先客戶端根據你輸入的域名去找瀏覽器dns緩存是否有對應的ip,若是沒有會去尋找本地的hosts文件(windows系統dns緩存),檢查文件中是否有域名和IP的對應關係。若是有,則根據這個IP地址創建鏈接。若是沒有,再去DNS服務器尋找。
具體詳情可參加另一篇博客:瀏覽器的域名解析web

三、創建TCP鏈接

找到目標IP地址之後,客戶端主動嘗試與服務器進行鏈接,三次握手。第一次是客戶端主動鏈接服務器,此時服務器知道客戶端須要創建鏈接了。第二次是服務器到客戶端,此時客戶端知道服務器收到鏈接請求了。第三次是客戶端到服務器,此時服務器知道客戶端收到了本身的迴應。到這裏,就認爲客戶端與服務器已經創建鏈接了。
具體詳情可參考另一篇博客:TCP的三次握手和四次揮手。windows

四、發送http請求

服務器根據客戶端發送的請求,根據後臺服務邏輯作出相應的響應
具體詳情可參考另一篇博客:http瀏覽器

五、獲得響應結果

客戶端根據服務響應獲得後臺服務響應的數據,由於此處爲瀏覽器中輸入域名的狀況,假設後臺返回的是一個普通的html頁面,瀏覽器獲得此html頁面之後會進行解析。緩存

六、瀏覽器解析HTML

渲染引擎解析html是從上到下解析,渲染引擎解析html的過程當中,把標籤內容轉化爲dom節點,映射成爲DOM樹。
具體詳情可參加另一篇文章:瀏覽器工做原理服務器

七、請求HTML中須要加載的資源

渲染引擎在解析html的過程當中,遇到外部資源(如:css、js),會請求外部資源網絡

八、render渲染

渲染引擎把html映射成爲DOM樹,根據加載的css資源,構建爲render樹,再佈局爲render樹,最後繪製render樹,經過呈現引擎展現給用戶。
渲染引擎解析html的過程當中,把標籤內容轉化爲dom節點,若是遇到css文件或者style標籤,會把這些樣式和dom節點構建成另一棵render樹,成型的幾何結構。dom

相關文章
相關標籤/搜索