HTTP協議簡述:html
使用統一資源標識符(Uniform Resource Identifiers, URI)來傳輸數據和創建鏈接。經過網絡進行數據信息傳輸。web
HTTP鏈接關閉機制:瀏覽器
HTTP鏈接一般由服務器關閉,服務器通過Time Wait時延後關閉鏈接,致使在繁忙的服務器上許多控制塊停留在該狀態。緩存
分析工具:安全
1.httpwatch 服務器
說明:難免費,只有破解的(本網站有下載),以插件方式安裝在Firefox browser和IE上。可能會出現不兼容狀況,值得使用。網絡
2.Firefox browser 或 IEide
說明: 免費,經過瀏覽器自帶開發工具,或頁面上的右鍵菜單「頁面元素」。工具
Firefox browser :在須要分析頁面上的右鍵菜單「查看元素」,啓動「分析器」工具,再啓動「網絡」工具,便可以看到HTTP協議交互流程。post
IE:IE中的快捷鍵F12,調出開發人員工具,選擇「探查器」,開啓「開始採樣」,選擇「網絡」,並刷新須要分析的web頁面,便可分析具體HTTP交互流程。
交互方式:
客戶端:
客戶端HTTP請求的Header信息處以百度新聞的一個頁面爲例講述客戶端HTTP請求的信息:
請求方式:
1.GET請求(經常使用方式)
返回request-URI所指出的任意信息 (向服務器請求一個文件)
其實也能夠傳送數據,但數據量較小,且爲明文,並不安全。
2.HEAD請求(經常使用方式)
服務器程序只返回指定文檔的首部信息,不包含實際文檔內容。(檢查一個對象是否存在)
做用:
測試超文本連接的正確性、可訪問性和最近的修改。
3.POST請求(經常使用方式)
發送郵件、新聞和表格 (向服務器發送數據,安全)
注:網頁上傳行爲(上傳文件、發帖、發郵件和上傳其餘內容)
上網行爲管理的URL過濾裏面的禁制發帖,防泄密,禁制發郵件用的就是HTTP的POST。
4.PUT請求
向服務器發送數據並儲存數據在服務器上
5.Delete請求
從服務器上刪除文件
6.Connecte請求
對通道提供請求
7.Trace
跟蹤到服務器的路徑
8.Options
查詢服務器的性能
首部字段:
1.應用於請求;
2.應用於響應
4.描述主體
host
請求web服務器的域名地址
user-agent 公用客戶端報文頭 (識別客戶端類型) 瀏覽器、系統信息 (服務器根據此信息判斷HTTP客戶端類型)
客戶端程序緩存:
if-modified-since報文首部
Accept
指定客戶端可以接收的內容類型,內容類型中的前後次序表示客戶端接收的前後次序。
Accept-Language
Accept-Encoding
支持的web服務器返回內容的壓縮編碼類型,節約帶寬。
報文數據類型:(顯示此HTTP請求提交的內容類型。通常只有post提交時才須要設置該屬性。)
content-type (媒體類型)
content-encoding (報文主體通過編碼)
Connection
是否須要持久鏈接,默認爲keep-alive,即規定時間內keep-alive鏈接。
Referer
包含一個URL,用戶從該URL表明的頁面出發訪問當前請求的頁面。
-----------------------------------------------------------------------------
服務器端返回HTTP頭部信息
此處以百度新聞的一個頁面爲例講述服務器HTTP響應的信息:
響應狀態代碼:
協議版本號和狀態代碼
響應狀態代碼:
2xx 信息型,成功 (200 OK 請求成功,主要常見於GET和POST請求方式。)
3xx 重定向,需用戶代理執行更多操做。
4xx 客戶端出錯
5xx 服務器差錯
Content-Length
表示web服務器返回消息正文的長度
Content-Type
返回數據的類型(例如text/html文本類型)和字符編碼格式。
Date
顯示當前的時間
Server
服務器類型
還包括包括其餘信息,此處略。