瀏覽器輸入網址後發生了什麼

瀏覽器輸入網址後發生了什麼?

在瀏覽器輸入網址,按下回車後,首先瀏覽器會作域名解析,獲取目標主機的ip地址。瀏覽器

1、域名解析

主要有如下幾個步驟:緩存

  1. 瀏覽器搜索自身的DNS緩存,若是沒找到,轉2;服務器

  2. 搜索操做系統自身DNS緩存,若是沒找到,轉3;spa

  3. 讀取本地的hosts文件,查找有無域名對應解析,若是沒找到,轉4;操作系統

  4. 瀏覽器發起一個DNS的一個系統調用:向本地域名解析服務器(由寬帶服務商提供),發起一個域名解析請求。code

    • 運營商的DNS服務器首先查看自身緩有無對應條目(沒有過時,則解析成功),若是不成功;圖片

    • 寬帶運營商代替瀏覽器發起一個迭代DNS解析的請求
      以www.imooc.com的IP地址爲例:ip

DNS迭代解析
通過八個步驟,最終查詢到域名的IP地址,並將其返回給瀏覽器;資源

2、瀏覽器得到域名對應的IP地址後,發起與服務器的TCP鏈接請求(完成「三次握手」);

TCP的通訊鏈接須要通過三個過程:rem

  • 客戶端向服務器發送一個創建鏈接請求

  • 服務器接収到鏈接請求後發送贊成鏈接的信號會客戶端

  • 客戶端收到贊成鏈接信號後,再次向服務器發送確認信號,至此,客戶端與服務器完成鏈接創建

3、創建TCP鏈接後,由瀏覽器向服務器發送請求;

4、 服務器接收客戶端的請求,根據路徑參數,將通過後臺處理的數據,發送回瀏覽器;

5、 瀏覽器得到完整的HTML頁面代碼,在解析、渲染頁面時,其中的JS、CSS和圖片等靜態資源也是一個個HTTP請求,通過前面7個步驟獲取;

6、 瀏覽器根據獲取到的資源對頁面進行最後的渲染,呈現給用戶。

相關文章
相關標籤/搜索