面試問題:當我們在瀏覽器中輸入一個域名url時,接下來會做什麼
這個題之前看面經的時候看到過,但是忘了點。
今天在筆試時遇到了:我大概寫的是首先會在DNS伺服器上查詢一個對映獲取伺服器的IP地址(域名-->IP)。然後向伺服器傳送HTTP請求報文...
但是感覺自己答得不好,今天在網上搜了下這個知識點,然後做下記錄。
問題:“在瀏覽器中輸入一個域名URL後,接下來會做什麼?”
答:第一步就是根據域名獲取伺服器的IP地址。
如何找到域名與IP地址的對映呢?
瀏覽器DNS快取------瀏覽器中有一個DNS快取器,會記錄我們之前一段時間我們的訪問記錄中域名--->IP。那麼瀏覽器首先會在自己的DNS快取中進行查詢這個域名,如果找到了就獲得伺服器的IP;如果在瀏覽器的DNS快取中沒有找到訪問的域名,會在系統快取中查詢;
系統快取------如果在瀏覽器DNS快取中沒有找到對應的域名,接下來會在系統快取中進行查詢(gethostbyname)獲取域名---->IP。如果找到了直接訪問伺服器IP;如果系統快取中沒有找到,會到路由器快取中查詢;
路由器DNS快取--------如果系統快取中沒有找到目的域名的對映,會將查詢請求傳送到路由器,每個路由器中有自己的DNS快取。然後會在路由器的DNS快取中查詢,如果沒有找到會到ISP 的DNS快取中去查詢。合法的域名最終在ISP快取中都能夠找到,最終瀏覽器獲得了域名對應的伺服器的IP;
第二步瀏覽器向伺服器的IP的埠號發起TCP三次握手建立連線;
第三步瀏覽器向伺服器傳送HTTP請求報文;
第四步伺服器根據HTTP請求報文的引數找到請求的資源;
第五步伺服器給瀏覽器傳送HTTP應答報文,把資源返回給客戶端;
第六步通過四次揮手釋放TCP連線;
相關推薦
面試問題:當我們在瀏覽器中輸入一個域名url時,接下來會做什麼
這個題之前看面經的時候看到過,但是忘了點。 今天在筆試時遇到了:我大概寫的是首先會在DNS伺服器上查詢一個對映獲取伺服器的IP地址(域名-->IP)。然後向伺服器傳送HTTP請求報文... 但是
當在瀏覽器中輸入一個域名後,會發生什麼
今天,去哪兒網Geely老師分享了他在校招時的一個面試題:當輸www.qunar.com時發生了什麼。(真不是做廣告哈) 因為學的並沒有很紮實,不能更深更廣的分析這個問題,遂---百度一下,發現這篇文章並轉載儲存下來。同時也分享一下,希望大家可以更深的瞭解其中提到的一些
網絡技術——當在瀏覽器中輸入一個網址並按下回車後發生的事情
一次 seq asc 找到 直接 隨機 傳輸層 搜索 主機 1、回車鍵按下後,瀏覽器會對輸入的地址數據進行解析: 1.1、檢查輸入的URL是http協議,請求資源是對應主機名網站主頁。 1.2、然後檢查瀏覽器的嚴格安全傳輸列表( HSTS列表 ),如果網站在列表中,則
當在瀏覽器中輸入一個url後回車,後臺發生了什麼?
這個問題之前、最近、我想以後肯定還會被問到,或者問到這樣的題目,如果在百度框裡輸入查詢的字串開始,是怎麼返回你需要的東西呢。 那這什麼個過程呢(這個問題我在之後的部落格中在寫)? 網上各種的說法,不外乎這麼幾種 第一種簡單的說呢就是這樣的: 第一步:客戶機
當在瀏覽器中輸入一個url後回車,後臺發生了什麼?比如輸入url後,你看到了百度的首頁,那麼這一切是如何發生的呢?
簡單來說有以下步驟:1、查詢域名對應的IP地址。這一步會依次查詢瀏覽器快取,系統快取,路由器快取,ISPDNS快取,根域名伺服器。2、向IP對應的伺服器傳送請求。3、伺服器響應請求,發回網頁內容。4、瀏覽器解析網頁內容。當然,由於網頁可能有重定向,或者嵌入了圖片,AJAX,
當我們在瀏覽器中輸入一個URL後,發生了什麼?
寫在開頭:這篇文章被我歸入部落格效能優化類別,是因為我認為如果我們要優化網站效能、提升使用者體驗,首要目標就是要知道使用者在本地請求並載入你的網頁的過程中,到底發生了什麼,在此基礎上我們才能更好的優化網頁。 圖源:知乎-張秋怡 瀏覽器解析並查詢快取 DNS查詢
在瀏覽器中輸入一個網址後,發生了什麼?
此文章轉載自:https://www.cnblogs.com/SarahLiu/p/5954832.html這是面試中一道非常經典的問題。當你在瀏覽器中輸入一個網址,瀏覽器的處理過程如下:第一步 瀏覽器查詢該域名的 IP 地址 第二步 瀏覽器根據解析得到的IP地址向 web
在瀏覽器中輸入一個地址回車後發生了些什麼事兒?
在瀏覽器中輸入一個地址回車後,直到你看到頁面,這中間發生了些什麼事兒? - 你回答個servlet生命週期也好啊 地址如果是域名,那麼會瀏覽器先讀瀏覽器的dns快取 沒有,讀本機的快取
描述在瀏覽器中輸入一個網址後的發生的事情
1.需要查詢域名的IP地址,DNS查詢過程如下: (1)查詢瀏覽器快取(每個遊覽器都會快取一段時間的DNS,2min~30min) (2)查詢系統快取,如果在瀏覽器快取中沒有找到需要的記錄,瀏覽器就是做一個系統呼叫(windows裡是gethosebyname),這樣便可
在瀏覽器中輸入網站域名並按下回車的詳細過程
部分 路由器 完成 是個 tis cli 圖片 聯系 led 主要有以下幾個部分: 1 DNS解析,獲取Web服務器IP 2 建立TCP連接 3 向Web服務器發送HTTP請求 4 Web服務器收到請求並處理 5 Web服務器返回響應 6 瀏覽器對響應解碼,並顯示
Android面試:主執行緒中的Looper.loop()一直無限迴圈為什麼不會造成ANR?(轉)
引子: 正如我們所知,在android中如果主執行緒中進行耗時操作會引發ANR(Application Not Responding)異常。 造成ANR的原因一般有兩種: 只有當應用程式的UI執行緒響應超時才會引起ANR,超時產生原因一般有兩種 1. 當前的事件沒有機會
瀏覽器地址輸入一個域名發生了什麼(用類比的方法來理解)
URL包含什麼: 協議(如:http) + 域名(如:baudu.com) + 檔案路徑(如:/htm_data/20/1510.html) + 埠(如:80) 開始—— os:我要輸入啦 1.輸入baidu.com
通過js禁止輸入空格(試用場景:當用字符串拼接插入dom節點時,onkeyup這些方法都不好使可用這個)
urn lob ria 所有 span returns cas code else if <span style="font-family: Arial, Helvetica, sans-serif;"><input type="password" nam
關於C語言中輸入一個三位整數,逆序輸出一個三位數
剛開始在leetcode上刷題,遇到的兩道題目比較簡單,一道是求用一個函式求輸入的兩個數的值,這個簡單就略過了,下面講講一道常見的題目,這是一點小心得,下面附上題目及解題思路:題目:Given a 32-bit signed integer, reverse digits o
HTML:當你的文字輸入框想輸入時,能匹配對應的提示項,試試datalist
話不多說,直接貼程式碼 <input list="browsers"> <datalist id="browsers"> <option value="Internet Explorer"> <option value="Firefox"&g
C語言:迴圈名句運用 累加器輸入一個數值進行累加,輸入13
/*累加器輸入一個數值進行累加,輸入13*/ #include<stdio.h> void main() {int i,a,s=0;printf("請輸入一個整型數值進行累加:");scanf("%d",&a);for(i=1;i<=a;i++){
解決input框獲取焦點時改變input邊框的顏色,在谷歌瀏覽器中input框獲取焦點時,input框多了一個帶顏色的邊框
1、問題頁面顯示效果 2、解決辦法,在input獲取焦點的樣式中加入outline:none;或outline-width:0; input[type=text]:focus, select:focus{ border:1px solid #3879d9; out
火狐瀏覽器中設定開啟新地址時,不會覆蓋原頁面的方法
近期使用火狐瀏覽器發現開啟新標籤頁時總是會覆蓋原頁面,百度了好多方法都是在選項中-設定標籤頁, 然而,在我用的瀏覽器版本里均無此項可設定,一直百度總算找到一種辦法,親試絕對有效! 1、本人用的是火狐瀏覽器62.0.3版本,如圖,同我版本相同或以上的版本都可用此方法; 2、此火狐瀏覽器新建標籤頁,輸入
C++:對結構體中字元陣列賦值時,出現表示式必須是可修改的左值的問題
問題描述: 在C++中為結構體中的字元陣列賦值時,出現”表示式必須是可修改的左值“的錯誤提醒,編譯報錯“不可指定資料型別”。 &n
當我們討論TCP的連線運輸管理時,我們在說什麼
TCP連線管理概述 TCP是面向連線的協議。運輸連線是用來傳送TCP報文的。TCP的連線和釋放是每一次面向連線的通訊中必不可少的過程。因此,運輸連線就有三個階段,即:連線建立,資料傳輸和連線釋放。運輸連線的管理就是使運輸連線的建立和釋放都可以正常的進行。 在TCP連線的建立過程中要解決一下三個問題。 1