摘要:本地服務器收到信息后,再去聯(lián)系頂級域名服務器。頂級域名服務器收到請求后,如果自己無法解析,再返回下一級域名服務器的,進行這樣一個迭代查詢之后,一直到子域名服務器。布局完成后,將渲染樹轉換成屏幕上的像素,顯示頁面。
當我們輸入 URL 并按回車后,瀏覽器會對 URL 進行檢查,首先判斷URL格式,比如是ftp http ed2k等等,我們這里假設這個URL是http://hellocassie.cn,那么瀏覽器會對這個 URL 進行安全檢查,然后瀏覽器內核會先查看緩存,再決定是發(fā)起請求,下載頁面,還是從緩存獲取頁面,如果是第一次訪問,這時候還沒有緩存,所以會去向服務器發(fā)起一個網(wǎng)絡請求。
下載頁面首先我們要確定服務器的網(wǎng)絡地址,才能把請求發(fā)給它,所以要把這個URL轉換成對應的IP地址,瀏覽器會依次從瀏覽器緩存,系統(tǒng)緩存,路由器緩存,本地DNS服務器進行一個遞歸查詢,如果本地DNS服務器也沒有對應的IP地址的記錄,這時候它會把請求發(fā)至13臺根域名服務器,根域名服務器收到請求后會判斷這個域名是誰來授權管理,然后返回一個負責該頂級域名服務器的一個IP。本地DNS服務器收到IP信息后,再去聯(lián)系頂級域名服務器。頂級域名服務器收到請求后,如果自己無法解析,再返回下一級域名服務器的IP,進行這樣一個迭代查詢之后,一直到子域名服務器。
這個時候有兩種情況,第一種是子域名服務器返回了這個URL對應的IP地址,第二種情況是經(jīng)過了CDN調度,如果目標網(wǎng)站使用了CDN服務,則需要在CDN服務商的平臺設置相應的CNAME記錄,這個記錄是CDN服務廠商的一個DNS服務器的域名,子域名服務器會返回這個CNAME記錄,本地DNS服務器得到這個記錄后,會向CDN服務廠商的DNS服務器查詢,然后CDN服務廠商的DNS服務器返回CDN服務廠商的一臺GSLB設備(全局負載均衡設備)的IP,本地DNS服務器攜帶自身的IP地址和要查詢的域名向GSLB設備發(fā)起請求,GSLB設備根據(jù)IP,以及要查詢的域名,選擇一臺用戶所屬區(qū)域的區(qū)域負載均衡設備,區(qū)域負載均衡設備根據(jù)一定的算法和策略,會向GSLB設備返回一個最適合的CDN節(jié)點的IP地址,比如說返回一個距離用戶最近的CDN節(jié)點,因為CDN服務器緩存了網(wǎng)站的源服務器的數(shù)據(jù),而且會像源服務器一樣,響應用戶的請求. 而且它離用戶更近,所以能獲得更快的響應速度。最后本地DNS服務器拿到這個CDN節(jié)點的IP地址。
得到IP后,會建立TCP連接,如果是https開頭的URL,還會建立SSL連接,進行一個請求證書,生成對話密鑰的過程。
然后開始進行HTTP請求,瀏覽器會先生成一個HTTP數(shù)據(jù)包,包含這次請求的信息,主要是請求方法、請求的說明和請求附帶的數(shù)據(jù),這個HTTP數(shù)據(jù)包經(jīng)過傳輸層,頭部加入雙方的端口信息,被封裝成一個TCP數(shù)據(jù)包,然后經(jīng)過網(wǎng)絡層,頭部加入雙方的IP地址信息,被封裝成一個IP數(shù)據(jù)包,然后經(jīng)過數(shù)據(jù)鏈路層,頭部設置雙方的MAC地址,封裝成以太網(wǎng)數(shù)據(jù)包,最后變成二進制數(shù)據(jù),傳送到服務器。
然后服務器作出響應,返回一個HTTP報文給瀏覽器,這個HTTP報文包含了狀態(tài)行,消息報頭,消息正文(就是HTML)。
緩存獲取頁面然后我們再看第二種情況,如果本地有緩存,瀏覽器會先判斷緩存是否過期,通過Expires和Cache-Control字段來判斷是否命中強制緩存,Expires是服務器返回該請求結果緩存的到期時間,Cache-Control的max-age會返回一個相對時間,因為無法確定客戶端的時間是否與服務端的時間同步,所以同時存在時,Cache-Control的優(yōu)先級更高。
如果強制緩存失效,進行協(xié)商緩存過程,瀏覽器攜帶緩存標識向服務器發(fā)起請求,由服務器根據(jù)緩存標識決定是否使用本地緩存。
在解析HTML的過程中,開始構建DOM樹,當遇到外鏈資源比如CSS/JS,瀏覽器會并行下載 CSS 和 JavaScript,
CSS下載時異步,不會阻塞瀏覽器構建DOM樹,但是會阻塞渲染,
JS會阻塞HTML的解析,需等待腳本下載完成并執(zhí)行后才會繼續(xù)解析HTML,
而且因為 JS 可能會查詢 CSSOM,所以必須在下載 CSS 文件之前將其阻止,然后才能執(zhí)行 JavaScript。
img圖片類資源會異步下載,不會阻塞解析,下載完畢后直接用圖片替換原有src的地方。
然后合并DOM樹和CSSOM樹,生成render樹,從 DOM 樹的根節(jié)點開始遍歷每個可見節(jié)點,忽略腳本標記、元標記、display: none的節(jié)點,對于每個可見節(jié)點,為其找到適配的 CSSOM 規(guī)則并應用它們。
然后開始布局,從渲染樹的根節(jié)點開始進行遍歷,計算每個節(jié)點在網(wǎng)頁的確切位置和大小。
布局完成后,將渲染樹轉換成屏幕上的像素,顯示頁面。
文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉載請注明本文地址:http://www.ezyhdfw.cn/yun/54668.html
摘要:本地服務器收到信息后,再去聯(lián)系頂級域名服務器。頂級域名服務器收到請求后,如果自己無法解析,再返回下一級域名服務器的,進行這樣一個迭代查詢之后,一直到子域名服務器。布局完成后,將渲染樹轉換成屏幕上的像素,顯示頁面。 當我們輸入 URL 并按回車后,瀏覽器會對 URL 進行檢查,首先判斷URL格式,比如是ftp http ed2k等等,我們這里假設這個URL是http://hellocas...
摘要:本地服務器收到信息后,再去聯(lián)系頂級域名服務器。頂級域名服務器收到請求后,如果自己無法解析,再返回下一級域名服務器的,進行這樣一個迭代查詢之后,一直到子域名服務器。布局完成后,將渲染樹轉換成屏幕上的像素,顯示頁面。 當我們輸入 URL 并按回車后,瀏覽器會對 URL 進行檢查,首先判斷URL格式,比如是ftp http ed2k等等,我們這里假設這個URL是http://hellocas...
摘要:用戶輸入網(wǎng)址用戶輸入也就是我們說的網(wǎng)址也是統(tǒng)一資源定義符用于定義互聯(lián)網(wǎng)資源比如輸入其中為協(xié)議是域名首字母的縮寫形式。因此協(xié)議能夠確保數(shù)據(jù)不會遺失。它的缺點是過程復雜實現(xiàn)困難消耗較多的資源。 1.用戶輸入url網(wǎng)址(URL) 用戶輸入url(也就是我們說的網(wǎng)址,也是統(tǒng)一資源定義符,用于定義互聯(lián)網(wǎng)資源) 比如輸入https://www.baidu.com 其中https為協(xié)議 baidu....
摘要:用戶輸入網(wǎng)址用戶輸入也就是我們說的網(wǎng)址也是統(tǒng)一資源定義符用于定義互聯(lián)網(wǎng)資源比如輸入其中為協(xié)議是域名首字母的縮寫形式。因此協(xié)議能夠確保數(shù)據(jù)不會遺失。它的缺點是過程復雜實現(xiàn)困難消耗較多的資源。 1.用戶輸入url網(wǎng)址(URL) 用戶輸入url(也就是我們說的網(wǎng)址,也是統(tǒng)一資源定義符,用于定義互聯(lián)網(wǎng)資源) 比如輸入https://www.baidu.com 其中https為協(xié)議 baidu....
摘要:示例攻擊如何進行下圖展示了攻擊者如何進行攻擊攻擊者利用網(wǎng)站的表單插入惡意字符串到網(wǎng)站數(shù)據(jù)庫中。恰恰相反,至少有兩種常見的方式,會導致受害者發(fā)起針對自己的反射型攻擊。攻擊者精心構造了一個包含惡意字符串的,將其發(fā)送給受害者。 原文地址:http://excess-xss.com/。如有翻譯不當之處,歡迎指出 :D 分為四部分: 概述 XSS 攻擊 XSS 防御 總結 第一部分:概述 X...
閱讀 2244·2023-04-26 00:23
閱讀 919·2021-09-08 09:45
閱讀 2508·2019-08-28 18:20
閱讀 2644·2019-08-26 13:51
閱讀 1672·2019-08-26 10:32
閱讀 1462·2019-08-26 10:24
閱讀 2097·2019-08-26 10:23
閱讀 2265·2019-08-23 18:10