七、HTTP協議概念原理說明
(一)當用戶訪問一個網站時,都發生了事情?
①. 利用DNS服務,將輸入的域名決議為相應的IP地址
a 本地主機輸入域名后,會查詢本地快取資訊和本地hosts
b 本地主機會向遠程LDNS服務器,發送遞回查詢請求
LDNS是網卡配置的DNS服務(223.5.5.5 114.114.114.114)
c LDNS服務器會向根域名服務器發出請求,將請求回應給LDNS服務器
d LDNS服務器會向頂級域名服務器發出請求,將請求回應給LDNS服務器
e LDNS服務器會向二級域名服務器發出請求,將請求回應給LDNS服務器
f LDNS服務器收到二級域名服務器回應過來的資訊(決議記錄),進行本地快取
將決議記錄發送給本地主機
g 本地主機收到LDNS服務器的回應資訊,也會將決議記錄進行快取,利用IP地址訪問網站服務器
②. 利用已知的IP地址,進行網路三次握手連接建立
③. 本地主機客戶端向網站服務端,發出請求 http請求資料包(http請求報文)
④. 網站服務端向本地主機客戶端,回復回應 http回應資料包(http回應報文)
⑤. 完成網路四次揮手斷開程序
(二)HTTP通訊原理說明
HTTP請求報文
請求行:
* 請求方法: 希望客戶端完成我的什么樣請求
get 獲取服務端的檔案內容
post 存盤提交資料到服務端
* 協議版本:http1.0 http1.1 http2.0
http1.0: 屬于TCP短連接型別協議
http1.1:屬于TCP長連接型別協議
請求頭:
空行
請求主體
* get方法:沒有請求主體內容
* post方法:會有請求主體內容
HTTP回應報文
起始行:
* 狀態碼資訊
(三)HTTP協議資源說明
1. 媒體資源型別
web服務可以處理接收的資源型別(text/html css jpg avi)
一般在web服務軟體程式中,會有一個檔案來定義媒體資源型別(mime.type)
2. URL/URI
URL 統一資源定位符
URI 統一資源識別符號
www.jd.com / error2.aspx
URL URI
3. 靜態檔案資源
靜態網頁資源有幾個重要的特征:
1) 每個頁面都有一個固定的URL地址,且URL一般以.html、.htm、.shtml等常見形式為后綴,
而且地址中不含有問號“?”或“&”等特殊符號,
2) 靜態網頁是實實在在保存在服務器上的檔案物體,每個網頁都是一個獨立的檔案,
3) 網頁內容是固定不變的,因此,容易被搜索引擎收錄(容易被用戶找到)(優點),
4) 因為網頁沒有資料庫的支持,所以在網站制作和維護方面的作業量較大,
當網站資訊量很大時,完全依靠靜態網頁比較困難(缺點),
5) 網頁的互動性較差,在程式的功能實作方面有較大的限制(缺點),
6) 網頁程式在用戶瀏覽器端決議,如IE瀏覽器,程式決議效率很高,
由于服務器端不進行決議,并且不需要讀取資料庫,因此服務器端可以接受更多的并發訪問,
當客戶端向服務器請求資料時,服務器會直接從磁盤檔案系統上回傳資料(不做任何決議),
待客戶端拿到資料后,在瀏覽器端決議并展現出來(優點),
4. 動態檔案資源
1) 網頁擴展名后綴常見為:.asp、.aspx、.php、.js、.do、.cgi等, ※
2) 網頁一般以資料庫技術為基礎,大大降低了網站維護的作業量,
3) 采用動態網頁技術的網站可以實作更多的功能,
如用戶注冊、用戶登錄、在線調查、投票、用戶管理、訂單處理、發博文等,
4) 動態網頁并不是獨立存在于服務器上的網頁檔案,當用戶請求服務器上的動態程式時,
服務器決議這些程式并可能通過讀取資料庫來回傳一個完整的網頁內容,
5) 動態網頁中的“?”在搜索引擎的收錄方面存在一定的問題,
搜索引擎一般不會從一個網站的資料庫中訪問全部網頁,或者出于技術等方面的考慮,
搜索蜘蛛一般不會去抓取網址中“?”后面的內容,因此在企業通過搜索引擎進行推廣時,
需要針對采用動態網頁的網站做一定的技術處理(偽靜態技術),以便適應搜索引擎的抓取要求,
5. 偽靜態檔案資源
根本實質還是動態資源,將動態資源偽裝成靜態
動態不便于搜索引擎收錄 回應速度較慢
(四)網站度量值統計方法:
1. IP(獨立IP),即Internet Protocol,這里指獨立IP數,
獨立IP數是指不同IP地址的計算機訪問網站時被計的總次數
2. PV(訪問量)即Page View,中文翻譯為頁面瀏覽,即頁面瀏覽量或點擊量,不管客戶端是不是相同,
也不管IP是不是相同,用戶只要訪問網站頁面就會被計算PV
3. UV(獨立訪客)即Unique Visitor,同一個客戶端(PC或移動端)訪問網站被計為一個訪客,
一天(00:00-24:00)內相同的客戶端訪問同一個網站只計一次UV
cookie:標識用戶主機身份資訊
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/89815.html
標籤:Linux
上一篇:Linux三階段之六:ansible批量管理服務介紹
下一篇:寫代碼時輸入法輸入中文的問題?
