新手入門教學之HTTP協議第一講

hello,大家好,今天這節課是面向廣大新手的基礎入門教學。

今天這節課是HTTP協議第一課,那麼什麼是HTTP呢?HTTP就是超文本傳輸協議,端口是80端口,那麼很多人就會問,我為什麼要學HTTP協議呢?不學不可以嗎?這裡的回答是:No

下面我來說說HTTP協議的重要性,HTTP是一些學習的基礎,比如最常的滲透測試必須要了解這個協議,那麼這個協議呢,就是我們瀏覽網站必須有的協議。HTTP協議不是很困難通過這及課及惡客的內容就可以完全理解,HTTP我打算用3個課程來講完,今天是第一課。

OK,不廢話,我們切入正題

1.1 HTTP簡介

HTTP是Hyper Text Transfer Protocol(超文本傳輸協議)的縮寫。它的發展是萬維網協會和Internet工作小組IETF合作的結果,他們最終發佈了一系列的RFC,RFC 1945定義了HTTP/1.0版本。其中最著名的就是RFC 2616。RFC 2616定義了今天普遍使用的一個版本——HTTP 1.1。

HTTP協議是用於從WWW服務器傳輸超文本到本地瀏覽器的傳送協議。它可以使瀏覽器更加高效,使網絡傳輸減少。它不僅保證計算機正確快速地傳輸超文本文檔,還確定傳輸文檔中的哪一部分,以及哪部分內容首先顯示(如文本先於圖形)等。

HTTP

是一個應用層協議,由請求和響應構成,是一個標準的客戶端服務器模型。HTTP是一個無狀態的協議。

1.2 在TCP/IP協議棧中的位置

HTTP協議通常承載於TCP協議之上,有時也承載於TLS或SSL協議層之上,這個時候,就成了我們常說的HTTPS。如下圖所示:

新手入門教學之HTTP協議第一講

默認HTTP的端口號為80HTTPS的端口號為443

1.3 HTTP的請求響應模型

HTTP協議永遠都是客戶端發起請求,服務器回送響應。見下圖:

新手入門教學之HTTP協議第一講

這樣就限制了使用HTTP協議,無法實現在客戶端沒有發起請求的時候,服務器將消息推送給客戶端。

HTTP協議是一個無狀態的協議,同一個客戶端的這次請求和上次請求是沒有對應關係。

1.4 工作流程

一次HTTP操作稱為一個事務,其工作過程可分為四步:

1)首先客戶機與服務器需要建立連接。只要單擊某個超級鏈接,HTTP的工作開始。

2)建立連接後,客戶機發送一個請求給服務器,請求方式的格式為:統一資源標識符(URL)、協議版本號,後邊是MIME信息包括請求修飾符、客戶機信息和可能的內容。

3)服務器接到請求後,給予相應的響應信息,其格式為一個狀態行,包括信息的協議版本號、一個成功或錯誤的代碼,後邊是MIME信息包括服務器信息、實體信息和可能的內容。

4)客戶端接收服務器所返回的信息通過瀏覽器顯示在用戶的顯示屏上,然後客戶機與服務器斷開連接。

如果在以上過程中的某一步出現錯誤,那麼產生錯誤的信息將返回到客戶端,有顯示屏輸出。對於用戶來說,這些過程是由HTTP自己完成的,用戶只要用鼠標點擊,等待信息顯示就可以了。

1.5 HTTP協議結構

新手入門教學之HTTP協議第一講

OK,以上的內容就是HTTP協議的第一課,感謝各位的觀看~

下一節:HTTP協議第二課(常見的HTTP頭)下期再見。


分享到:


相關文章: