隨着互聯網技術的發展,瀏覽器已成為網民們獲得優質服務與信息的重要工具。當我們連接上網絡,打開瀏覽器,輸入網址,空白的頁面瞬間會出現各式各樣的信息,比如一個搜索網頁、擠滿文字的門戶網站或由圖片、文字等整齊排版的網站。那么,從我打開瀏覽器到我們看到想要的東西展示在網頁上這一過程中,究竟時發生了什么呢?
一個網頁從開始請求到最終的顯示一般可以分為7個步驟:
(1)在瀏覽器中輸入網址;
(2)發送至DNS服務器並獲得域名對應的web服務器的IP地址;
(3)與web服務器建立起TCP連接;
(4)瀏覽器向服務器的IP地址發送相應的http請求;
(5)web服務器響應請求並返回指定URL的數據,或錯誤信息,如果設定重定向,則重定向到新的 URL地址;
(6)瀏覽器下載數據后解析HTML源文件,解析的過程中實現對頁面的排版,解析完后在瀏覽器中顯 示基礎頁面;
(7)分析頁面中的超鏈接並顯示在當前頁面,重復以上過程直至無超鏈接需要發送,完成全部顯示
我們該如何理解以上 的過程呢?
我們可以從三個方面理解這一過程:瀏覽器、服務器、瀏覽器與服務器之間的通訊協議。這三者之間又是通過web(萬維網/www/w3/world wide web)來連接的。
(1)什么是web?
web分為web客戶端與web服務器程序,web可以讓web客戶端(常用的瀏覽器)訪問web服務器端的頁面。是一個由許多互相鏈接的超文本組成的系統,通過互聯網訪問。在這個系統中,每個有用的事物,稱為一樣“資源”;並且由一個全局“統一資源標識符”(URI)標識;這些資源通過超文本傳輸協議(Hypertext Transfer Protocol)傳送給用戶,而后者通過點擊鏈接來獲得資源。
支持web的技術,首先是底層的網絡,因為web就是建立在Internet之上,web的基本協議是HTTP協議,它跑在TCP上的協議之上,而TCP協議又需要IP協議的支持,IP協議又要由底層鏈路來支撐,所以我們可以從高到低看到這樣一個協議棧 http->tcp->ip->連路層協議。要理解web到ip就已經足夠了。
