在瀏覽器輸入網址,按下Enter後,發生了什麼事?

更新於 發佈於 閱讀時間約 3 分鐘
以瀏覽www.google.com為例,瀏覽器需先找到www.google.com對應的ip地址,才能得到網頁資料,顯示在瀏覽器中。

那要如何才能找到ip呢? 這邊就要提到DNS(Domain Name System),他是一個資料庫,裡面紀錄了域名跟IP的對應,瀏覽器透過DNS可以找到IP。

查找ip地址的動作則稱為域名解析,查找步驟如下:
1. 查找瀏覽器緩存
瀏覽器曾經到訪過的網站,會緩存DNS記錄一段時間。
若有找到則結束,沒找到則進行下一步查找。
2. 查找作業系統緩存
從作業系統中的 hosts 檔案查找有沒有紀錄對應的ip。
若有找到則結束,沒找到則進行下一步查找。

windows 10 在這個位置:
裡面內容類似這樣:
3. 查找路由器緩存
路由器也會緩存DNS記錄。
若有找到則結束,沒找到則進行下一步查找。
4. 查找 ISP DNS 緩存
向網際網路服務供應商 (Internet Service Provider, ISP),如中華電信, 查找有沒有DNS記錄。
若有找到則結束,沒找到則進行下一步查找。
5. 查找根域名伺服器(root name server)
ISP DNS會向根域名伺服器進行查詢。
(1) ISP DNS向根域名伺服器詢問.com域名的IP。
(2) ISP DNS向.com域名伺服器詢問.google域名的IP。
(3) ISP DNS向.google域名伺服器詢問www域名的IP。
(4) ISP DNS將最終查到的www.google.com對應IP記錄在緩存中。
(5) 告訴瀏覽器www.google.com ip位址。

查到ip地址後,瀏覽器會向伺服器發送連線請求:
(1) TCP 三次握手,建立連線。
(2) 開始發送http request。
(3) 伺服器處理請求,並返回http response。
(4) 瀏覽器解析並呈現網頁。
(5) TCP 四次揮手,斷開連線。
即將進入廣告,捲動後可繼續閱讀
為什麼會看到廣告
avatar-img
21會員
161內容數
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
Vic Lin的沙龍 的其他內容
結構化資料: 事先定義好每個欄位可以存放什麼資料,這種儲存的資料就是結構化資料。 像是關聯式資料庫中的資料,需要先把table欄位定義好,之後才能儲存資料。 半結構化資料: 無需事先定義好資料欄位,每一筆資料能夠根據需求儲存不同的欄位,因此很有彈性,如JSON, XML等等。 非結構化資料: 未整理
OAuth 2.0 是一個開放標準,允許user授權第三方應用存取該user的私有資料,而無需提供帳密資料給第三方應用。
想從javascript拿到不同源的資料,除了上一篇介紹的CORS,其實還有一個東西叫JSOP,是指透過script tag src的方式繞過同源政策來實現cross origin。
Cross-Origin Resource Sharing 簡稱 CORS,中文為跨來源資源共享。 上一篇提到web瀏覽器有同源政策的限制,而CORS則是一種安全確認機制,讓瀏覽器和伺服器之間能確保安全的進行cross origin資源共享,即若伺服器同意,即可達成跨來源資源共享。
同源政策是瀏覽器基於安全性考量而存在的一個政策,針對瀏覽器指令碼的限制。
REST全名為Representational State Transfer,它是一種軟體架構風格,不是一種標準。 以REST架構設計的系統就可以稱為 RESTful,就像是美麗 (Beauty) 的事物可以稱為 Beautiful。
結構化資料: 事先定義好每個欄位可以存放什麼資料,這種儲存的資料就是結構化資料。 像是關聯式資料庫中的資料,需要先把table欄位定義好,之後才能儲存資料。 半結構化資料: 無需事先定義好資料欄位,每一筆資料能夠根據需求儲存不同的欄位,因此很有彈性,如JSON, XML等等。 非結構化資料: 未整理
OAuth 2.0 是一個開放標準,允許user授權第三方應用存取該user的私有資料,而無需提供帳密資料給第三方應用。
想從javascript拿到不同源的資料,除了上一篇介紹的CORS,其實還有一個東西叫JSOP,是指透過script tag src的方式繞過同源政策來實現cross origin。
Cross-Origin Resource Sharing 簡稱 CORS,中文為跨來源資源共享。 上一篇提到web瀏覽器有同源政策的限制,而CORS則是一種安全確認機制,讓瀏覽器和伺服器之間能確保安全的進行cross origin資源共享,即若伺服器同意,即可達成跨來源資源共享。
同源政策是瀏覽器基於安全性考量而存在的一個政策,針對瀏覽器指令碼的限制。
REST全名為Representational State Transfer,它是一種軟體架構風格,不是一種標準。 以REST架構設計的系統就可以稱為 RESTful,就像是美麗 (Beauty) 的事物可以稱為 Beautiful。
你可能也想看
Google News 追蹤
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
#maxask #惡意軟體 #瀏覽器被惡意或廣告工具綁架 URL轉址(重定向、重新導向):當使用者瀏覽A網址時,自動跳轉到B網址。 - 發生情境: 使用edge瀏覽器,使用Google搜尋引擎, 搜尋XXX關鍵字,網頁自動跳轉到maxask的搜尋介面。
DNS 和 SEO 緊密相關,擁有一個載入速度更快的網站將為您的訪客帶來卓越的用戶體驗,Google 也更喜歡快速載入的網域,閱讀本文了解更多關於 DNS 的小知識! DNS(網域名稱系統)是什麼? 全名為 Domain Name System,是一種分散的分層結構,DNS 將網域名稱(電腦、服
Thumbnail
網路爬蟲的由來 網路爬蟲,也叫網路蜘蛛(spider),是一種用來自動瀏覽全球資訊網的網路機器人。其目的一般為編纂網路索引。網路搜尋引擎等站點通過爬蟲軟體更新自身的網站內容或其對其他網站的索引。網路爬蟲可以將自己所訪問的頁面儲存下來,以便搜尋引擎事後生成索引供使用者搜尋。 網路爬蟲的原理
Thumbnail
當我們架好站、WebService測試完,接著就是測試區域網路連線啦~
Thumbnail
當你在操作網站 SEO 排名時,索引是你需要了解的觀念。因為沒有索引就沒有排名;沒有排名就拿不到免費流量的入場券。那麼要如何確認網頁已收錄在 Google 資料庫中?本篇文章會教你 3 種檢查方法。
Thumbnail
經常在社群上看到有人詢問為什麼我的「網站名稱」是網址?要如何修改出現在搜尋結果頁上的網站名稱?因此,本篇文章將解釋什麼是網站名稱、如何撰寫及新增網站名稱。
※ Javascript和HTML的關係 當我們輸入新的網址或按下重新整理時,從解析檔案到畫面顯示出來,瀏覽器會進行以下流程: 解析 HTML / CSS 檔案,建立物件模型: HTML → DOM (Document Object Model)。 CSS → CSSOM (CSS Obje
Thumbnail
在現代數位時代,擁有一個網站是非常重要的。確保您的網站能夠被搜索引擎正確地索引和顯示是至關重要的。本文章介紹了一些提高網站在搜索引擎中排名的方法,包括Google網站登錄、GSC工具、其他搜索引擎的登錄方法、優化網站內容、網站地圖、內部連結、外部連結、社交媒體的使用以及不希望被搜索引擎索引的方法。
Thumbnail
之前分享過【網路請求帶參數的方式】,開發者可以透過 URL 代入參數,來向伺服器請求特定的資源,我們當然也可以擷取 URL 的內容,來做為後續開發的判斷條件,這篇就來記錄一下,網址(URL) 和域名(Domain) 是什麼,以及如何取得網址的參數吧! 我們常說的網址連結 URL 完整名稱是 U
Thumbnail
本文將探討Kubernetes內部DNS解析的相關流程,並介紹如何利用DNS來找到服務。透過瞭解DNS的工作原理,可以讓應用服務的問題處理更有效率,並提供基本測試與結論。
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
#maxask #惡意軟體 #瀏覽器被惡意或廣告工具綁架 URL轉址(重定向、重新導向):當使用者瀏覽A網址時,自動跳轉到B網址。 - 發生情境: 使用edge瀏覽器,使用Google搜尋引擎, 搜尋XXX關鍵字,網頁自動跳轉到maxask的搜尋介面。
DNS 和 SEO 緊密相關,擁有一個載入速度更快的網站將為您的訪客帶來卓越的用戶體驗,Google 也更喜歡快速載入的網域,閱讀本文了解更多關於 DNS 的小知識! DNS(網域名稱系統)是什麼? 全名為 Domain Name System,是一種分散的分層結構,DNS 將網域名稱(電腦、服
Thumbnail
網路爬蟲的由來 網路爬蟲,也叫網路蜘蛛(spider),是一種用來自動瀏覽全球資訊網的網路機器人。其目的一般為編纂網路索引。網路搜尋引擎等站點通過爬蟲軟體更新自身的網站內容或其對其他網站的索引。網路爬蟲可以將自己所訪問的頁面儲存下來,以便搜尋引擎事後生成索引供使用者搜尋。 網路爬蟲的原理
Thumbnail
當我們架好站、WebService測試完,接著就是測試區域網路連線啦~
Thumbnail
當你在操作網站 SEO 排名時,索引是你需要了解的觀念。因為沒有索引就沒有排名;沒有排名就拿不到免費流量的入場券。那麼要如何確認網頁已收錄在 Google 資料庫中?本篇文章會教你 3 種檢查方法。
Thumbnail
經常在社群上看到有人詢問為什麼我的「網站名稱」是網址?要如何修改出現在搜尋結果頁上的網站名稱?因此,本篇文章將解釋什麼是網站名稱、如何撰寫及新增網站名稱。
※ Javascript和HTML的關係 當我們輸入新的網址或按下重新整理時,從解析檔案到畫面顯示出來,瀏覽器會進行以下流程: 解析 HTML / CSS 檔案,建立物件模型: HTML → DOM (Document Object Model)。 CSS → CSSOM (CSS Obje
Thumbnail
在現代數位時代,擁有一個網站是非常重要的。確保您的網站能夠被搜索引擎正確地索引和顯示是至關重要的。本文章介紹了一些提高網站在搜索引擎中排名的方法,包括Google網站登錄、GSC工具、其他搜索引擎的登錄方法、優化網站內容、網站地圖、內部連結、外部連結、社交媒體的使用以及不希望被搜索引擎索引的方法。
Thumbnail
之前分享過【網路請求帶參數的方式】,開發者可以透過 URL 代入參數,來向伺服器請求特定的資源,我們當然也可以擷取 URL 的內容,來做為後續開發的判斷條件,這篇就來記錄一下,網址(URL) 和域名(Domain) 是什麼,以及如何取得網址的參數吧! 我們常說的網址連結 URL 完整名稱是 U
Thumbnail
本文將探討Kubernetes內部DNS解析的相關流程,並介紹如何利用DNS來找到服務。透過瞭解DNS的工作原理,可以讓應用服務的問題處理更有效率,並提供基本測試與結論。