国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

URL到頁(yè)面: 探索網(wǎng)頁(yè)加載的神秘過程

這篇具有很好參考價(jià)值的文章主要介紹了URL到頁(yè)面: 探索網(wǎng)頁(yè)加載的神秘過程。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

當(dāng)我們從瀏覽器的地址欄輸入 URL, 按下回車,

URL到頁(yè)面: 探索網(wǎng)頁(yè)加載的神秘過程

再到最后出現(xiàn)需要的網(wǎng)頁(yè)界面,

URL到頁(yè)面: 探索網(wǎng)頁(yè)加載的神秘過程

這中間究竟發(fā)生了什么, 接下來就一步步進(jìn)行解析.

主要是如下過程:

  1. 輸入網(wǎng)址
  2. DNS 解析
  3. 客戶端發(fā)送 HTTP 請(qǐng)求
  4. 建立 TCP 連接
  5. 服務(wù)器處理請(qǐng)求, 計(jì)算響應(yīng), 返回響應(yīng)
  6. 瀏覽器渲染頁(yè)面
  7. 關(guān)閉連接

本篇中只是概述整個(gè)過程, 主要是說明從輸入 URL 到展示出頁(yè)面這個(gè)過程中做了什么, 但不會(huì)對(duì)這中間的每個(gè)子過程進(jìn)行詳細(xì)的介紹, 這些內(nèi)容在我前面的博客都有總結(jié)過, 不清楚的話可以參考看一看, 具體如下.

計(jì)網(wǎng)之初識(shí)網(wǎng)絡(luò)(理解網(wǎng)絡(luò)傳輸?shù)幕玖鞒?

計(jì)網(wǎng)傳輸層協(xié)議:UDP和TCP

計(jì)網(wǎng)之IP協(xié)議和以太網(wǎng), DNS

計(jì)網(wǎng)之HTTP協(xié)議

1. 輸入網(wǎng)址

當(dāng)在瀏覽器中輸入 URL 后敲下回車, 瀏覽器會(huì)對(duì)輸入的信息進(jìn)行以下判斷:

  1. 檢查輸入的內(nèi)容是不是一個(gè)合法的 URL 鏈接還是一個(gè)待搜素的關(guān)鍵詞.
  2. 如果是合法的URL鏈接, 判斷輸入的URL是不是一個(gè)完整的URL, 如果不是, 瀏覽器就會(huì)自己猜測(cè), 然后補(bǔ)全這個(gè)URL.
  3. 如果是一個(gè)待搜索的關(guān)鍵詞, 瀏覽器就會(huì)結(jié)合用戶設(shè)置的默認(rèn)搜索引擎的 URL 來進(jìn)行搜索.

2. 進(jìn)行DNS域名解析

DNS 是由解析器和域名服務(wù)器組成的, 作用是將域名轉(zhuǎn)化成 IP 地址.

我們平時(shí)在瀏覽器中輸入的網(wǎng)址, 其實(shí)就是域名, 當(dāng)我們輸入網(wǎng)址按下回車時(shí), 就發(fā)起了一個(gè) GET 請(qǐng)求, 此時(shí)瀏覽器的 DNS 系統(tǒng)首先要做的事情就是解析這個(gè)域名, 將域名轉(zhuǎn)化成 IP 地址.

通俗的講, 我們更習(xí)慣于記住一個(gè)網(wǎng)站的名字, 比如 www.baidu.com, 而不是記住它的 IP 地址, 比如: 167.23.10.2; 而計(jì)算機(jī)更擅長(zhǎng)記住網(wǎng)站的 IP 地址, 而不是像 www.baidu.com 等鏈接; 類比一下, 其實(shí) DNS 就相當(dāng)于一個(gè)電話本, 你要找 www.baidu.com 這個(gè)域名, 那就去翻一翻電話本, 就能知道它的電話 (IP) 是 167.23.10.2.

3. 進(jìn)行封裝

瀏覽器拿到域名對(duì)應(yīng)的 IP 地址之后, 就可以構(gòu)造出 HTTP 數(shù)據(jù)報(bào), 將其交給傳輸層, 會(huì)以一個(gè)隨機(jī)端口 (1024~65535) 向服務(wù)器的 Web 程序的 80 端口 (是服務(wù)器偵聽網(wǎng)頁(yè)客戶端請(qǐng)求的默認(rèn)端口) 發(fā)起 TCP 的連接請(qǐng)求 (三次握手) , 接著將數(shù)據(jù)交給了網(wǎng)絡(luò)層, IP協(xié)議將其封裝成立IP數(shù)據(jù)報(bào), 然后交給數(shù)據(jù)鏈路層, 轉(zhuǎn)換成二進(jìn)制形式的比特 (bit) 流, 從網(wǎng)卡發(fā)送出去, 再把比特轉(zhuǎn)換成電子, 光學(xué)或微波信號(hào)在網(wǎng)絡(luò)中傳輸最終通過網(wǎng)卡傳輸出去.

4. 進(jìn)行傳輸

傳輸?shù)倪^程中, 經(jīng)過一些網(wǎng)絡(luò)設(shè)備, 交換機(jī)和路由器等;

  • 交換機(jī)把數(shù)據(jù)分用到數(shù)據(jù)鏈路, 再重新封裝, 繼續(xù)轉(zhuǎn)發(fā).
  • 路由器會(huì)把數(shù)據(jù)分用到網(wǎng)絡(luò)層, 重新封裝, 接著路由器會(huì)根據(jù)數(shù)據(jù)報(bào)中的目的 IP 在路由表中匹配, 找個(gè)合適的方向發(fā)出去, 每次轉(zhuǎn)發(fā) TTL 都會(huì)減1 (TTL 是一個(gè) IP 協(xié)議的值, 它告訴網(wǎng)絡(luò), 數(shù)據(jù)包在網(wǎng)絡(luò)中的時(shí)間是否太長(zhǎng)而應(yīng)被丟棄).

5. 服務(wù)器接收請(qǐng)求, 根據(jù)請(qǐng)求計(jì)算響應(yīng), 重新封裝, 返回響應(yīng)

服務(wù)器通過監(jiān)聽端口來獲取到客戶端的 HTTP 請(qǐng)求, 與客戶端建立 TCP 連接后, 服務(wù)器開始接收客戶端發(fā)來的數(shù)據(jù), 首先進(jìn)入到網(wǎng)卡, 然后是進(jìn)入到內(nèi)核的 TCP/IP 協(xié)議棧分用數(shù)據(jù) (用于識(shí)別該連接請(qǐng)求, 解封包, 一層一層的剝開), 終通過 HTTP 解碼, 從接收到的數(shù)據(jù)中進(jìn)行解析, 找到你想要訪問的那個(gè)資源, 將資源構(gòu)造成 HTTP 響應(yīng), 再將響應(yīng)層層封裝發(fā)送給客戶端瀏覽器.

這樣一個(gè) HTTP 通信就完成了, 服務(wù)器會(huì)根據(jù) HTTP 請(qǐng)求中的 Connection 字段, 決定是否關(guān)閉 TCP 連接通道, Connection 字段值為 keep-alive 時(shí), 服務(wù)器不會(huì)立刻關(guān)閉連接, 保證通信的完成.

6. 瀏覽器接收響應(yīng), 進(jìn)行渲染頁(yè)面, 最終呈現(xiàn)一個(gè)完整的頁(yè)面

瀏覽器接收到響應(yīng)內(nèi)容之后, 還是先對(duì)數(shù)據(jù)進(jìn)行分用, 最后瀏覽器會(huì)解析 HTML 文件生成主頁(yè)框架(構(gòu)建 dom 樹), JS 的解析是由瀏覽器中的 JS 解析引擎完成的, 比如谷歌的是 V8.

在解析過程中, 如果同時(shí)遇到請(qǐng)求外部資源時(shí), 如圖片, 外鏈的 CSS 等靜態(tài)資源的引用, 會(huì)向服務(wù)器繼續(xù)發(fā)送請(qǐng)求, 請(qǐng)求的內(nèi)容就是主頁(yè)里的一些資源, 例如圖片, 視頻, JS文件等…

這些請(qǐng)求過程是異步的, 并不會(huì)影響 HTML 頁(yè)面進(jìn)行加載.

7. 斷開連接

此時(shí)整個(gè)過程結(jié)束, 最后通過四次揮手, 瀏覽器和客戶端的連接.文章來源地址http://www.zghlxwxcb.cn/news/detail-475286.html

到了這里,關(guān)于URL到頁(yè)面: 探索網(wǎng)頁(yè)加載的神秘過程的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 在瀏覽器中輸入U(xiǎn)RL到顯示頁(yè)面經(jīng)歷哪些過程,涉及到哪些協(xié)議?

    作為一個(gè)大學(xué)學(xué)過計(jì)算機(jī)網(wǎng)絡(luò)的人,在工作后。。。幾乎把TCP/IP模型和OSI模型忘得干干凈凈的了,重新根據(jù)百度詞條,對(duì)瀏覽器地址解析做了粗略的總結(jié),也當(dāng)是給自己加深一下印象。 首先瀏覽器要將URL解析為IP地址,解析域名就要用到DNS協(xié)議,首先主機(jī)會(huì)查詢DNS的緩存,如

    2024年02月09日
    瀏覽(27)
  • Android項(xiàng)目在 app 中通過 WebView 訪問 url顯示空白,使用瀏覽器可以打開,Android WebView加載出現(xiàn)空白頁(yè)面問題解決

    Android項(xiàng)目在 app 中通過 WebView 訪問 url顯示空白,使用瀏覽器可以打開,Android WebView加載出現(xiàn)空白頁(yè)面問題解決

    服務(wù)器證書校驗(yàn)主要針對(duì) WebView 的安全問題。 在 app 中需要通過 WebView 訪問 url,因?yàn)榉?wù)器采用的自簽名證書,而不是 ca 認(rèn)證,使用 WebView 加載 url 的時(shí)候會(huì)顯示為空白,出現(xiàn)無(wú)法加載網(wǎng)頁(yè)的情況。 使用 ca 認(rèn)證的證書,在 WebView 則可以直接顯示出來,不需要特殊處理。 以往

    2024年02月04日
    瀏覽(30)
  • 瀏覽器訪問url的查找過程

    首先查找瀏覽器自身的緩存,是否緩存了該網(wǎng)頁(yè),如果緩存了,就直接返回緩存的頁(yè)面。當(dāng)然,這個(gè)頁(yè)面可能是過時(shí)的。 如果瀏覽器的緩存沒有,則會(huì)查找系統(tǒng)的緩存,也就是hosts文件。如果hosts文件中找到了域名的ip,則會(huì)訪問這個(gè)ip地址。 如果hosts文件里也沒有,則會(huì)嘗試

    2024年02月10日
    瀏覽(18)
  • 瀏覽器輸入url后執(zhí)行的整個(gè)過程(詳細(xì)解析)

    這個(gè)問題也是老生常談了,更是經(jīng)常被作為面試的壓軸題出現(xiàn)。在此稍微全面一點(diǎn)記錄下。 檢查網(wǎng)頁(yè)重定向 URL 重定向 (也稱為 URL 轉(zhuǎn)發(fā) )是一種為頁(yè)面、表單或者整個(gè) Web 站點(diǎn)/應(yīng)用提供多個(gè) URL 地址的技術(shù)。 當(dāng)實(shí)際資源(如單個(gè)頁(yè)面、表單或者整個(gè) Web 應(yīng)用)被遷移到新的

    2024年02月03日
    瀏覽(91)
  • 面試:瀏覽器從輸入url到渲染頁(yè)面,發(fā)生了什么

    用戶輸入階段 合成 URL :瀏覽區(qū)會(huì)判斷用戶輸入是合法 URL,比如用戶輸入的是搜索的,默認(rèn)的搜索引擎會(huì)合成新的,如果符合url規(guī)則會(huì)根據(jù)url協(xié)議,在這段內(nèi)容加上協(xié)議合成合法的url? ? ? 查找緩存 網(wǎng)絡(luò)進(jìn)程獲取到 URL,先去本地緩存中查找是否有緩存資源,如果有則

    2024年02月06日
    瀏覽(20)
  • UniApp開發(fā)安卓以及H5實(shí)現(xiàn)頁(yè)面級(jí)權(quán)限管理,避免用戶瀏覽器直接輸入url訪問頁(yè)面

    UniApp開發(fā)安卓以及H5實(shí)現(xiàn)頁(yè)面級(jí)權(quán)限管理,避免用戶瀏覽器直接輸入url訪問頁(yè)面

    前言:uni-app如何像vue-router中的beforeEach一樣實(shí)現(xiàn)跳轉(zhuǎn)攔截功能呢? 為此uniapp官方提供了專門的API方法?uni.addInterceptor 舉個(gè)栗子 我們發(fā)現(xiàn)底部有四個(gè)菜單分別是:首頁(yè)、分類、購(gòu)物車、我的;按常理來說首頁(yè)和分類是不需要登陸就能查看的。另外兩個(gè)則需要先登陸才能查看沒登

    2024年01月16日
    瀏覽(114)
  • 瀏覽器錄屏技術(shù):探索網(wǎng)頁(yè)內(nèi)容的視覺記錄之道

    瀏覽器錄屏技術(shù):探索網(wǎng)頁(yè)內(nèi)容的視覺記錄之道

    在當(dāng)今數(shù)字化時(shí)代,瀏覽器錄屏技術(shù)已經(jīng)成為了一種強(qiáng)大的工具,用于記錄和分享網(wǎng)頁(yè)內(nèi)容的視覺體驗(yàn)。無(wú)論是用戶體驗(yàn)測(cè)試、教育培訓(xùn)、產(chǎn)品演示還是遠(yuǎn)程協(xié)作,瀏覽器錄屏技術(shù)都能提供便捷、高效的解決方案。 在線錄屏 | 一個(gè)覆蓋廣泛主題工具的高效在線平臺(tái)(amd794.com

    2024年03月09日
    瀏覽(16)
  • 網(wǎng)頁(yè)布局(解決瀏覽器縮放頁(yè)面亂版問題)

    主要解決兩個(gè)問題: 1. div盒子隨Ctrl+【+/-】縮放而縮放的問題 2. 最小化窗口然后進(jìn)行縮放頁(yè)面的布局問題 3. 頂部導(dǎo)航固定問題 ### 第一個(gè)問題,則需了解 (1) 容器的布局:margin: auto、定位等等 (2) 尺寸單位:具體尺寸、可視尺寸(vh、vw)、百分比尺寸 ### 第二個(gè)問題,則需了解

    2024年02月04日
    瀏覽(29)
  • 從您輸入網(wǎng)站 URL 到其在屏幕上完成加載的整個(gè)過程

    以下是從輸入網(wǎng)站 URL 到其在屏幕上完成加載的整個(gè)過程: 1. 用戶輸入網(wǎng)站 URL(例如,http://www.example.com)并按下“Enter”鍵。 2. 網(wǎng)絡(luò)協(xié)議根據(jù) URL 中的信息確定要訪問的服務(wù)器 IP 地址。 3. 網(wǎng)絡(luò)協(xié)議建立與該服務(wù)器的 TCP 連接。 4. 網(wǎng)絡(luò)協(xié)議通過 HTTP 請(qǐng)求向服務(wù)器發(fā)送請(qǐng)求。

    2024年02月07日
    瀏覽(25)
  • 配置SSl證書后,https訪問,頁(yè)面獲取的url卻是http,導(dǎo)致頁(yè)面資源無(wú)法加載

    配置SSl證書后,https訪問,頁(yè)面獲取的url卻是http,導(dǎo)致頁(yè)面資源無(wú)法加載

    有個(gè)朋友來問,為什么我配置完ssl證書之后,https可以正常訪問,但是頁(yè)面中的資源卻無(wú)法正常加載。 打開瀏覽器調(diào)試頁(yè)報(bào)錯(cuò)如圖: 廢話不多說直接處理問題: 方式一: 這頁(yè)面head標(biāo)簽內(nèi) 添加 meta標(biāo)簽配置, 內(nèi)容如下: 或者直接修改頁(yè)面資源地址 加上 https:// 如果使用requ

    2024年02月09日
    瀏覽(22)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包