第一步. 在瀏覽器輸入URL
·什么是URL
? URL(Uniform Resource Locator:統一資源定位器)用于定位互聯網上的資源
是WWW頁的地址,它從左到右由下述部分組成:
? ·Internet資源類型(scheme):指出WWW客戶程序用來操作的工具。如“http://”表示WWW服務器,“ftp://”表示FTP服務器,“gopher://”表示Gopher服務器,而“new:”表示Newgroup新聞組。
? ·服務器地址(host):指出WWW頁所在的服務器域名。
?·端口(port):有時(并非總是這樣),對某些資源的訪問來說,需給出相應的服務器提供端口號。
?·路徑(path):指明服務器上某資源的位置(其格式與DOS系統中的格式一樣,通常有目錄/子目錄/文件名這樣結構組成)。與端口一樣,路徑并非總是需要的。
URL地址格式排列為:scheme://host:port/path,例如http://www.sohu.com/domain/HXWZ就是一個典型的URL地址。
它有如下 http、https、ftp、file 協議
? ? http 線上網站
? ? file ?本地
? ? https 經過了安全加密處理的http協議
? ? // ?相對于該網頁,如果網頁為http 則代表了 http目錄下;如果為本地,那么該網頁就是file的地址
? ? 在地址欄,輸入相應地址就可進入該網站 例如:輸入www.baidu.com 則進入百度
第二步. 域名解析
? ? 對于http://www.baidu.com的URL,瀏覽器實際上不知道www.baidu.com到底是什么東西,需要查找www.baidu.com網站所在服務器的IP地址,才能找到目標
為什么要發明域名,不直接用IP?
方便記憶
? ? 域名是什么?
? ? 對于http://www.baidu.com:8080/blog,www.baidu.com就是域名
IP地址是什么?
? ? IP地址是在網絡上分配給每臺計算機或網絡設備的32位數字標識。在Internet上,每臺計算機或網絡設備的IP地址是全世界唯一的。IP地址的格式是 xxx.xxx.xxx.xxx,其中xxx是 0 到 255 之間的任意整數。例如,每步站主機的IP地址是 219.134.132.131。
? ? 每一臺聯網的計算機無權自行設定IP地址,有一個統一的機構—IANA負責對申請的組織分配唯一的網絡ID,而該組織可以對自己的網絡中的每一個主機分配一個唯一的主機ID,正如一個單位無權決定自己在所屬城市的街道名稱和門牌號,但可以自主決定本單位內部的各個辦公室編號一樣。
? ? 分為公網和局域網
? ? 每個處于互聯網中的設備都有IP 地址,形如192.168.0.1
? ? 局域網 IP 和公網 IP 是有差別的
? ? 127.0.0.1代表本機的 IP
域名解析的流程
? ? 瀏覽器緩存 – 瀏覽器會緩存DNS記錄一段時間
? ? 系統緩存 - 從 Hosts 文件查找是否有該域名和對應 IP。
? ? 路由器緩存 – 一般路由器也會緩存域名信息。
? ? ISP DNS 緩存 – 比如到電信的 DNS 上查找緩存。
? ? 如果都沒有找到,則向根域名服務器查找域名對應 IP,根域名服務器把請求轉發到下一級,知道找到 IP
Question:電腦上不了網,為什么修改dns為8.8.8.8 或者114.114.114.114?
dns 劫持是什么?
Answer:之所以連不上網,就是因為DNS混亂,所以改為8.8.8.8直接訪問谷歌,即可解決,114.114.114.114是國內一個比較大的運營網站。
? ? DNS劫持,會讓一些偽站冒充正規網址,因為域名都一樣,所以很容易上當受騙
第三步. 服務器處理
? ? 服務器是一臺安裝系統的機器,常見的系統如Linux、windows server 2012
? ? 系統里安裝的處理請求的應用叫 Web server
Web服務器
? ? 常見的 web服務器有 Apache、Nginx、IIS、Lighttpd
? ? web服務器接收用戶的Request 交給網站代碼,或者接受請求反向代理到其他 web服務器。
第四步. 網站處理流程
? ? MVC 模型(model)-視圖(view)-控制器(controller)
第五步. 瀏覽器處理
? ? HTML字符串被瀏覽器接受后被一句句讀取解析
? ? 解析到link 標簽后重新發送請求獲取css
? ? 解析到 script標簽后發送請求獲取 js,并執行代碼
? ? 解析到img 標簽后發送請求獲取圖片資源
第六步. 繪制網頁
? ? 瀏覽器根據 HTML 和 CSS 計算得到渲染樹,繪制到屏幕上
? ? js 會被執行