web服務器——http協議原理介紹

HTTP協議原理

HTTP協議,全稱HyperText Transfer Protocol,中文名為超文本傳輸協議

HTTP的重要應用之一是WWW服務

www,全稱World Wide Web,常稱為Web,中文譯為”萬維網”

HTTP協議的WWW服務應用的默認端口為80

另外一個加密的WWW服務應用https的默認端口為443

說明:一般互聯網公司,對外開放的端口,只有兩個(80和443)

HTTP協議報文結構詳細說明

  • HTTP請求報文結構

1)請求行

a 請求方法

get ----獲得請求文件信息的數據內容 (獲取)

post ----告知服務器需要保存的數據信息(提交)

b 請求文件信息

說明:當沒有指定請求的文件內容,默認請求的是首頁文件index.html

c 說明請求報文采用的說明http協議版本

1.0: 規定瀏覽器與服務器只保持短暫的連接(TCP短連接)

1.1: 規定瀏覽器與服務器只保持長久的連接 (TCP長連接)

2)請求頭(內容)

3)空行

4)請求主體內容

說明:採用get方法時,不會有請求主體內容;採用post方法時,將要提交的信息放入請求主體中

  • HTTP響應報文結構

1)起始行:

a HTTP協議版本說明

1.0: 規定瀏覽器與服務器只保持短暫的連接(TCP短連接)

1.1: 規定瀏覽器與服務器只保持長久的連接 (TCP長連接)

b HTTP響應狀態碼信息

告知請求的結果

200 --- 正常響應請求報文

301 --- 跳轉,永久跳轉

302 --- 跳轉,臨時跳轉

403 --- 設置指定頁面,拒接訪問:(權限問題)

404 --- 找不到我所要請求的文件內容(找不到請求的頁面信息)

500+ --- 網站後端服務器出現了問題(大部分情況都是網站出現問題)

說明:詳細瞭解很多HTTP狀態碼,http權威指南

web服務器——http協議原理介紹

http協議狀態碼對應的作用

c HTTP狀態描述信息

curl 命令可以在linux系統中,模擬瀏覽器功能,訪問網站

-I ----- 顯示響應報文起始行和響應頭部信息

2)響應頭部

3) 空行

4)響應報文主體

說明:就是請求報文中,所要請求文件的內容:客戶端瀏覽器會識別響應報文主體內容,進行解析。

  • 不同狀態範圍碼及其作用
web服務器——http協議原理介紹

  • HTTP基礎原理圖 請求與響應報文詳細信息
web服務器——http協議原理介紹

客戶端請求報文主題內容

web服務器——http協議原理介紹

服務端相應報文主題

  • HTTP術語介紹說明

互聯網上的數據有很多種不通的類型,Web服務器會把通過Web傳輸的每個對象都打上MIME類型(即MIME type)的數據格式標籤。最初設計MIME(multipurpose internet mail Extension,多用途因特網郵件擴展)是為了解決再不同的電子郵件系統之間搬移報文時存在的問題。MIME在電子郵件系統種工作得非常好。後來,HTTP也支持這個功能,用它來描述數據並標記不同的數據內容類型。

當Web服務器響應HTTP請求時,會為每一個HTTP對象數據加一個MIME類型,當Web瀏覽器獲取到服務器返回的對象時,會去看看相關的MIME類型,並進行相應的處理。

MIME類型存在與HTTP響應報文的響應頭部信息裡,它是一種文件標記,表示一種主要的對象和一個特定的子類型,中間由一條斜槓來分割。

1) 媒體資源類型

說明:定義相應web服務可以識別的文件資源類型

如果媒體資源類型中有相應請求文件類型,會幫你進行解析

如果媒體資源類型中沒有相應請求文件類型,會將文件傳輸給客戶端,自行解析

2) URL與URI概念介紹

URL 全稱為 uniform resource location,中文翻譯為統一資源定位符 比如:jingdong.com.hhk URI 全稱為 uniform resource identifier 中文翻譯為統一資源標識符 比如:jingdong.com

3)靜態網頁資源

門戶新聞業務

新聞網站的特點是一旦發佈完成,幾乎不會再改動網頁內容,因此,新聞業務內容靜態化相對比較簡單。

web服務器——http協議原理介紹

純粹HTML格式的頁面(可以包含圖片、視頻JS(前段功能實現)、CSS(樣式)等)通常被稱為”靜態網頁”

特徵說明:

a 每個頁面都有一個固定的URL地址,且URL一般以.html、.htm、.shtml等常見形式為後綴,而且地址中不含有問號“?”或“&”等特殊符號。

b 靜態網頁是實實在在保存在服務器上的文件實體,每個網頁都是一個獨立的文件

c 靜態資源不需要和數據庫進行交互,因此網站交互性能差

d 網頁內容是固定不變的,因此,容易被搜索引擎收錄(容易被用戶找到)(優點)

e 網頁程序在用戶瀏覽器端解析,當客戶端向服務器請求數據時,

服務器會直接從磁盤文件系統上返回數據(不做任何解析)

4)動態網頁資源

web服務器——http協議原理介紹

所謂的動態網頁是與靜態網頁相對而言的,也就是說,動態網頁的URL後綴不是.html、.htm、.xml、.shtml、.js、.css等靜態網頁的常見擴展名形式

特徵說明:

A 動態資源需要和數據庫進行交互,因此網站交互性能好

省略...

B 網頁程序在服務端解析,當客戶端向服務器請求數據時,

服務器會直接從磁盤文件系統上返回數據(會做數據解析後返回)

5) 偽靜態資源(瞭解/真正企業中有開發人員負責偽靜態資源編寫)

A 網頁內容是固定不變的,因此,容易被搜索引擎收錄

B 網頁程序在用戶瀏覽器端解析,當客戶端向服務器請求數據時,服務器會直接從磁盤文件系統上返回數據(不做任何解析)

C 動態資源需要和數據庫進行交互,因此網站交互性能優

D 網頁程序在服務端解析,當客戶端向服務器請求數據時,服務器會直接從磁盤文件系統上返回數據(會做數據解析後返回)

如何證明一個網站有價值

  • IP度量值:(參考值)

根據訪問的用戶源IP地址進行統計,判斷有多少用戶進行訪問?

說明:有可能統計數值不準確

a 由於有NAT映射問題,會把局域網多臺主機不同的源IP地址映射為一個相同的公網源IP地址

b 由於家用撥號網絡,沒有固定的外網IP地址

數據計算方法:

01)利用awk數組方法結合nginx訪問日誌(分享講解awk多維數組)

02)通過程序代碼進行統計

var _hmt = _hmt || [];

(function() {

var hm = document.createElement("script");

hm.src = "https://hm.baidu.com/hm.js?9aa800f882f575237396648643111698";

var s = document.getElementsByTagName("script")[0];

s.parentNode.insertBefore(hm, s);

})();

說明:通過代碼實現IP度量值統計記錄

03)藉助第三方工具進行統計

  • PV度量值:(參考值)

page view:頁面訪問量

數據計算方法:

01)利用awk數組方法結合nginx訪問日誌(分享講解awk多維數組)

02)通過程序代碼進行統計

var _hmt = _hmt || [];

(function() {

var hm = document.createElement("script");

hm.src = "https://hm.baidu.com/hm.js?9aa800f882f575237396648643111698";

var s = document.getElementsByTagName("script")[0];

s.parentNode.insertBefore(hm, s);

})();

說明:通過代碼實現IP度量值統計記錄

03)藉助第三方工具進行統計

  • UV度量值

記錄一個獨立訪客數;利用cookie進行統計記錄

cookie: 記錄客戶端訪問信息,cookie信息一般會保存在客戶端

session:記錄客戶端訪問信息,session信息一般會保存在服務端

數據計算方法:

01)利用awk數組方法結合nginx訪問日誌(分享講解awk多維數組)

02)通過程序代碼進行統計

var _hmt = _hmt || [];

(function() {

var hm = document.createElement("script");

hm.src = "https://hm.baidu.com/hm.js?9aa800f882f575237396648643111698";

var s = document.getElementsByTagName("script")[0];

s.parentNode.insertBefore(hm, s);

})();

說明:通過代碼實現IP度量值統計記錄

03)藉助第三方工具進行統計

網站度量linux企業運維常見面試題

  • 你如何理解網站併發?
web服務器——http協議原理介紹

web服務器——http協議原理介紹

web服務器——http協議原理介紹

web服務器——http協議原理介紹

  • 公司訪問量是多少,怎麼計算的?按照PV UV IP 併發來三個知識點去侃
web服務器——http協議原理介紹

web服務器——http協議原理介紹

本次完,謝謝大家支持。——ke.ke


分享到:


相關文章: