繁體中文(香港)
瀏覽器如何處理地址欄中的 URL 輸入?
當我們在瀏覽器中打開一個特定的 URL 時,瀏覽器如何加載和顯示內容?我們將按照事件發生的順序展示瀏覽器依次做了什麼。
當我們在瀏覽器中打開一個特定的 URL 時,瀏覽器如何加載和顯示內容?我們將按照事件發生的順序展示瀏覽器依次做了什麼。
除了使用自定義本機應用程序瀏覽特定網頁之外,大多數網頁都是用瀏覽器瀏覽的。因此,當我們在瀏覽器中打開一個特定的 URL 時,瀏覽器如何加載和顯示內容?我們將按照事件發生的順序展示瀏覽器依次做了什麼。
在我們之前的博客文章中,我們涵蓋了包括域名(例如 www.google.com、blog.logto.io 等)在內的 URL 組件。
瀏覽器不能直接理解域名並找到相應的資源,需要知道具體的 IP 地址以定位網頁所需資源的位置。
瀏覽器會通過域名系統(DNS)找到對應於域名的 IP 地址。
為了讓查找 IP 地址的過程快到可能,域名與 IP 地址之間的對應關係通常使用各種緩存,例如瀏覽器緩存、操作系統緩存等等。
當緩存查找失敗時,我們會通過常規的 DNS 查找過程來找到域名的 IP 地址。這些是步驟:
blog.logto.io 時,網頁瀏覽器請求 DNS 服務以獲取 IP 地址,對應的查詢由 DNS 解決器接收.io)和一些相關信息.io TLD 服務器.io TLD 服務器返回 logto.io 絕名服務器地址logto.io 域名服務器logto.io 域名服務器返回 blog.logto.io 地址blog.logto.io IP 地址轉發回網頁瀏覽器然後,網頁瀏覽器可以從服務器請求相應的資源並渲染網站供用戶查看。
通過 DNS 服務獲得要瀏覽的域名對應的 IP 地址後,網頁瀏覽器啟動並建立與服務器的 TCP 連接。
建立 TCP 連接後,瀏覽器啟動向服務器的網絡請求,獲得相應的資源,並基於獲得的資源渲染網頁內容供用戶瀏覽。