標籤:內容 協議 網關 主機名稱 具體細節 name 基本功 圖片 web瀏覽器
1.1 通訊
Web內容是儲存在伺服器上的,Web服務所使用的是HTTP協議,所以經常稱為HTTP伺服器。通訊過程為用戶端(正常我們所使用的)發出請求,服務端根據用戶端的HTTP請求響應相應資料,這就是基本的HTTP通訊。
1.2 傳輸內容與附加類型MIME
用戶端向服務端擷取內容有N多種類型,如:Word、JPEG、AVI、HTML等等上千種。
在傳輸過程中為分辨傳輸內容類型,Web伺服器會為所有HTTP對象資料附加一個MIME類型。當Web瀏覽器(用戶端)向伺服器擷取一個對象時,會根據MIME類型標記判斷如何處理該對象。
MIME類型是一種為本標記,表示一種主要的物件類型和一個特定的子類型,中間由一個斜杠分隔。
例:HTML格式的文字文件用 text/html類型來標記
ASCII的文字文件由text/plain類型來標記
JPEG版本的圖片為image/jpeg類型
1.3 URI、URL、URN
URI(Uniform Resource Identity):統一資源識別項,是伺服器上每個資源的具體名字,URL就就是這個資源的唯一標識並定位資訊資源。
URL(Uniform Resource Location):統一資源定位器,URL描述了特定伺服器上的某一資源的特定位置,它們可以明確說明如何從一個精確、固定位置擷取資源。
例:http://www.baidu.com/images/Logo.gif 擷取百度網站的Logo表徵圖(這個URL我瞎寫的,舉例說明為主,大家懂就好)
URL各部分類型含義:
- URL的第一部分為方案,說明了訪問資源所使用的協議類型,這部分通常為HTTP
- 第二部分為伺服器的網際網路網址(伺服器名稱)上例中:www.baidu.com
- 其餘部分制定了某個資源的具體路徑位置
URN(Uniform Resource Name):統一資源名,URN是作為特定內容的唯一名稱來使用,與資源的所在地無關。
1.4 事物
一個HTTP事物由一條請求命令和一個響應結果所組成。這種通訊是通過HTTP報文的格式化資料區塊進行的。
方法:
狀態代碼:每條HTTP響應報文返回時都會攜帶一個狀態代碼,標識響應狀態
-
- 200: OK,正確返回
- 302:Redirect,到其他地方尋找資源
- 404:Not Found,無法找到資源
1.5 報文
報文是有一行一行的簡單字串組成的,不是二進位代碼
從用戶端發往伺服器的為請求報文,從伺服器發往用戶端的為響應報文
HTTP報文包括三部分:
- 起始行 請求報文:說明要做什麼;響應報文:說明什麼情況
- 首部欄位 可有可無,有的一般含有MIME及長度等
- 主體 可有可無,可以為用戶端或服務端相互傳輸的各類型資料
1.6 串連
HTTP為應用程式層協議,不會關心通訊細節,具體細節有傳輸層TCP/IP解決
備忘,各層含義,由上至下:
- HTTP 應用程式層
- TCP 傳輸層
- IP 網路層
- 網路特有的鏈路介面 資料連結層
- 物理網路硬體 物理層
在HTTP用戶端向伺服器發送報文之前需要IP地址極連接埠號碼在用戶端與伺服器建立TCP/IP串連,所以需要在URL內解析到伺服器的IP及連接埠號碼(目的不同可能連接埠號碼也不相同)
例1:URL:http//:www.baidu.com:80/index.html
例2:URL:http//:192.168.1.3:80/index.html
從上例可以看出:例1沒有採用數字形式IP,使用的是文本型網域名稱,或可稱為主機名稱
例2中採用數字IP
例1、例2得連接埠號碼都是預設80(預設80可不寫)
串連及通訊其完整過程為:
- 瀏覽器從URL中擷取IP或主機名稱(擷取後轉換為IP地址)及連接埠號碼
- 建立一條與Web伺服器串連的TCP串連
- 瀏覽器向伺服器發送一條HTTP請求報文
- 伺服器向用戶端發送一條HTTP回應報文
- 關閉串連,瀏覽器顯示回應內容
1.7 協議版本
- HTTP/0.9 古老,設計缺陷多,只支援GET,不支援首部,MIME等
- HTTP/1.0 廣泛應用版本,含有準系統
- HTTP/1.0+ 廣泛流行,非正式版本
- HTTP/1.1
- HTTP-NG(又名2.0)
1.8 Web的結構組件
1.代理
代理位於用戶端與伺服器之間,接收用戶端所有HTTP請求並將這些請求轉寄至伺服器,代理可對請求和響應進行過濾動作,如屏蔽視頻,病毒檢測等
2.緩衝
在代理傳送常用文檔時,緩衝會將該文檔儲存起來,在用戶端再次請求同一文檔時可以享受緩衝私人副本所提供的服務
3.網關
網關會將其他協議類型的請求封裝成HTTP協議報文,發送給用戶端
4.隧道
通過隧道傳送檔案及內容,可對其加密
5.Agent代理
各類瀏覽器
以上。
後續會繼續做筆記~~
HTTP權威指南筆記-概述