HTTP協定基礎


理解協定對於掌握安全測試非常重要。當我們攔截網路伺服器和用戶端之間的資料包資料時,您將能夠理解協定的重要性。

1. HTTP協定

超文字傳輸協定(HTTP)是用於分散式共同作業超媒體資訊系統的應用程式級協定。它是自1990年以來全球資訊網資料通訊的基礎。HTTP是一種通用的無狀態協定,可以用於其他目的,也可以使用其請求方法,錯誤程式碼和檔頭的擴充套件。

基本上,HTTP是基於TCP/IP的通訊協定,用於通過Web傳送諸如HTML檔案,影象檔案,查詢結果等資料。它為計算機相互通訊提供了標準化的方法。HTTP規範指定用戶端請求的資料如何傳送到伺服器,以及伺服器如何響應這些請求。

2. 基本功能

以下三個基本功能使HTTP成為簡單而強大的協定 -

  • HTTP是無連線的 - HTTP用戶端,即瀏覽器發起HTTP請求。發出請求後,用戶端將斷開與伺服器的連線並等待響應。伺服器處理請求並重新建立與用戶端的連線以發回響應。

  • HTTP與媒介無關 - 只要用戶端和伺服器都知道如何處理資料內容,就可以通過HTTP傳送任何型別的資料。用戶端和伺服器都需要使用適當的MIME型別指定內容型別。

  • HTTP是無狀態的 - HTTP是無連線的,這是HTTP是無狀態協定的直接結果。伺服器和用戶端僅在當前請求期間相互了解。之後,他們兩個都忘記了彼此。由於協定的這種性質,用戶端和瀏覽器都不能在跨網頁的不同請求之間保留資訊。

HTTP/1.0為每個請求/響應交換使用新連線,而HTTP/1.1連線可用於一個或多個請求/響應交換。

3. 架構

下圖顯示了Web應用程式的一個非常基本的體系結構,並描述了HTTP所在的位置 -

HTTP體系結構

HTTP協定是基於用戶端/伺服器體系結構的請求/響應協定,其中web瀏覽器,機器人和搜尋引擎等充當HTTP用戶端並且web伺服器充當伺服器。

用戶端 - HTTP用戶端以請求方法,URI和協定版本的形式向伺服器傳送請求,後跟包含請求修飾符,用戶端資訊和TCP / IP連線上可能的正文內容的類似MIME的訊息。

伺服器 - HTTP伺服器以狀態行響應,包括訊息的協定版本和成功或錯誤程式碼,後跟包含伺服器資訊,實體元資訊和可能的實體主體內容的類似MIME的訊息。

HTTP協定是基於用戶端/伺服器體系結構的請求/響應協定,其中web瀏覽器,機器人和搜尋引擎等充當HTTP用戶端並且web伺服器充當伺服器。

  • 用戶端 - HTTP用戶端以請求方法,URI和協定版本的形式向伺服器傳送請求,後跟包含請求修飾符,用戶端資訊和TCP/IP連線上可能的正文內容的類似MIME的訊息。

  • 伺服器 - HTTP伺服器以狀態行響應,包括訊息的協定版本和成功或錯誤程式碼,後跟包含伺服器資訊,實體元資訊和可能的實體主體內容的類似MIME的訊息。

HTTP的缺點

  • HTTP不是完全安全的協定。
  • HTTP使用埠80作為通訊的預設埠。
  • HTTP在應用層執行。它需要為資料傳輸建立多個連線,這會增加管理開銷。
  • 使用HTTP不需要加密/數位證書。

4. Http協定詳細資訊

為了理解HTTP協定的深入,請點選以下連結分別了解它們。