看完《圖解HTTP》后,記錄下自己的理解、加強(qiáng)記憶和方便日后回顧。
1、URL 輸入到頁(yè)面流程:
· 在瀏覽器輸入U(xiǎn)RL
· 域名解析
· 服務(wù)器處理
· 網(wǎng)站處理
· 瀏覽器處理
· 繪制網(wǎng)頁(yè)
一、 在瀏覽器輸入U(xiǎn)RL:
·URL(Uniform Resource Locator)統(tǒng)一資源定位器,是計(jì)算機(jī)Web網(wǎng)絡(luò)相關(guān)的術(shù)語(yǔ),就是網(wǎng)頁(yè)地址的意思。
1、URL四中協(xié)議
①HTTP:HTTP,即超文本傳輸協(xié)議,是 HyperText Transfer Protocol的縮寫。瀏覽網(wǎng)頁(yè)時(shí)在瀏覽器地址欄中輸入的URL前面都是 以"http://"開始的。HTTP定義了信息如何被格式化、如何被傳輸,以及在各種命令下服務(wù)器和瀏覽器所采取的響應(yīng)。
②HTTPS:HTTPS(全稱:Hypertext Transfer Protocol over Secure Socket Layer),是以安全為目標(biāo)的HTTP通道,簡(jiǎn)單講是HTTP的安全版。即HTTP下加入SSL層,HTTPS的安全基礎(chǔ)是SSL,因此加密的詳細(xì)內(nèi)容就需要SSL。
③FTP:FTP則是File Transfer Protocol文件傳輸協(xié)議。
④FILE:本地文件傳輸協(xié)議,F(xiàn)ile協(xié)議主要用于訪問(wèn)本地計(jì)算機(jī)中的文件。
重點(diǎn):https比http更安全
二、域名解析:
①查找URL網(wǎng)站所在服務(wù)器的IP地址(IP地址是指互聯(lián)網(wǎng)協(xié)議地址(英語(yǔ):Internet Protocol Address,又譯為網(wǎng)際協(xié)議地址),是IP Address的縮寫。IP地址是IP協(xié)議提供的一種統(tǒng)一的地址格式,它為互聯(lián)網(wǎng)上的每一個(gè)網(wǎng)絡(luò)和每一臺(tái)主機(jī)分配一個(gè)邏輯地址,以此來(lái)屏蔽物理地址的差異。目前還有些ip代理軟件,但大部分都收費(fèi)。)
②域名解析的流程
1、瀏覽器緩存 – 瀏覽器會(huì)緩存DNS記錄一段時(shí)間
2、系統(tǒng)緩存 - 從 Hosts 文件查找是否有該域名和對(duì)應(yīng) IP。
3、路由器緩存 – 一般路由器也會(huì)緩存域名信息。
4、ISP DNS 緩存 – 比如到電信的 DNS 上查找緩存。
5、如果都沒(méi)有找到,則向根域名服務(wù)器查找域名對(duì)應(yīng) IP,根域名服 務(wù)器把請(qǐng)求轉(zhuǎn)發(fā)到下一級(jí),直到找到 IP
三、 服務(wù)器處理
服務(wù)器是一臺(tái)安裝系統(tǒng)的機(jī)器,常見(jiàn)的系統(tǒng)如Linux、windows server 2012。系統(tǒng)里安裝的處理請(qǐng)求的應(yīng)用叫 Web server
web服務(wù)器接收用戶的Request 交給網(wǎng)站代碼,或者接受請(qǐng)求反向代理到其他 web服務(wù)器
四、 網(wǎng)站處理
接受服務(wù)器的數(shù)據(jù)并處理
五、 瀏覽器處理
HTML字符串被瀏覽器接受后被一句句讀取解析
解析到link 標(biāo)簽后重新發(fā)送請(qǐng)求獲取css
解析到 script標(biāo)簽后發(fā)送請(qǐng)求獲取 js,并執(zhí)行代碼
解析到img 標(biāo)簽后發(fā)送請(qǐng)求獲取圖片資源
六、繪制網(wǎng)頁(yè)
瀏覽器根據(jù) HTML 和 CSS 計(jì)算得到渲染樹,繪制到屏幕上
js 會(huì)被執(zhí)行
px:知乎上關(guān)于此類問(wèn)題的精彩回答https://www.zhihu.com/question/34873227
附圖總體流程:
