詳解HTTP 理解透HTTP,看這篇就夠了

2022-05-11 13:20:31 字數 3336 閱讀 7142

1、全稱:英文翻譯(hypertext transfer protocol),即超文字傳輸協議;

2、基礎:tcp協議;

3、工作層:應用層

4、作用:規定www伺服器與瀏覽器之間資訊傳遞規範

冪等方法有:delete、get、put、head、options

例如上面的header

header     解釋      示例

accept     指定客戶端能夠接收的內容型別     accept: text/plain, text/html

accept-encoding     指定瀏覽器可以支援的web伺服器返回內容壓縮編碼型別。     accept-encoding: compress, gzip

accept-language     瀏覽器可接受的語言     accept-language: en,zhconnection     

connection     表示是否需要持久連線。(http 1.1預設進行持久連線)     connection: close

cookie     http請求傳送時,會把儲存在該請求網域名稱下的所有cookie值一起傳送給web伺服器。     cookie: $version=1; skin=new;

host     指定請求的伺服器的網域名稱和埠號     host: sp1.baidu.com

referer     先前網頁的位址,當前請求網頁緊隨其後,即來路     referer:

user-agent     user-agent的內容包含發出請求的使用者資訊     user-agent: mozilla/5.0 (linux; x11)

header     解釋     示例

accept-ranges     表明伺服器是否支援指定範圍請求及哪種型別的分段請求     accept-ranges: bytes

age     從原始伺服器到**快取形成的估算時間(以秒計,非負)     age: 12

cache-control     告訴所有的快取機制是否可以快取及哪種型別     cache-control: no-cache

content-encoding     web伺服器支援的返回內容壓縮編碼型別。     content-encoding: gzip

content-length     響應體的長度     content-length: 348

content-type     返回內容的mime型別     content-type: text/html; charset=utf-8

date     原始伺服器訊息發出的時間     date: tue, 15 nov 2010 08:12:31 gmt

etag     請求變數的實體標籤的當前值     etag: 「737060cd8c284d8af7ad3082f209582d」

expires     響應過期的日期和時間     expires: thu, 01 dec 2010 16:00:00 gmt

last-modified     請求資源的最後修改時間     last-modified: tue, 15 nov 2010 12:45:26 gmt

server     web伺服器軟體名稱     server: apache/1.3.27 (unix) (red-hat/linux)

vary     告訴下游**是使用快取響應還是從原始伺服器請求     vary: *

1)無法保證訊息的保密性;

2)無法保證訊息的完整性和準確性;

3)無法保證****的可靠性。

①伺服器把自己的公鑰登入至數字證書認證機構。

②數字證書機構把自己的私有金鑰向伺服器的公開密碼部署數字簽名並頒發公鑰證書。

③客戶端拿到伺服器的公鑰證書後,使用數字證書認證機構的公開金鑰,向數字證書認證機構驗證公鑰證書上的數字簽名。以確認伺服器公鑰的真實性。

④使用伺服器的公開金鑰對報文加密後傳送。

⑤伺服器用私有金鑰對報文解密。

①客戶端傳送報文進行ssl通訊。報文中包含客戶端支援的ssl的指定版本、加密元件列表(加密演算法及金鑰長度等)。

②伺服器應答,並在應答報文中包含ssl版本以及加密元件。伺服器的加密元件內容是從接受到的客戶端加密元件內篩選出來的。

③伺服器傳送報文,報文中包含公開金鑰證書。

④伺服器傳送報文通知客戶端,最初階段ssl握手協商部分結束。

⑤ssl第一次握手結束之後,客戶端傳送乙個報文作為回應。報文中包含通訊加密中使用的一種被稱pre-master secret的隨機密碼串。該密碼串已經使用伺服器的公鑰加密。

⑥客戶端傳送報文,並提示伺服器,此後的報文通訊會採用pre-master secret金鑰加密。

⑦客戶端傳送finished報文。該報文包含連線至今全部報文的整體校驗值。這次握手協商是否能夠完成成功,要以伺服器是否能夠正確解密該報文作為判定標準。

⑧伺服器同樣傳送change cipher spec報文。

⑨伺服器同樣傳送finished報文。

⑩伺服器和客戶端的finished報文交換完畢之後,ssl連線就算建立完成。

⑪應用層協議通訊,即傳送http響應。

⑫最後由客戶端斷開鏈結。斷開鏈結時,傳送close_nofify報文。

http + 加密 + 認證 + 完整性保護 = https 

Http協議詳解 Http請求詳解

http是hypertext transfer protocol 超文字傳輸協議 的簡寫,它是tcp ip協議的乙個應用層協議,用於定義web瀏覽器與web伺服器之間交換資料的過程。客戶端連上web伺服器後,若想獲得web伺服器中的某個web資源,需遵守一定的通訊格式,http協議用於定義客戶端與w...

HTTP雜談 一 HTTP協議理解

一 http協議是什麼?你瀏覽的 每乙個網頁 都是 基於 http 協議 呈現的,http 協議是網際網路應用中,客戶端 瀏覽器 與伺服器 之間進行 資料通訊的一種協議 只要大家都 按照協議規定方式 發起請求和返回響應結果,任何人都可以基於http協議 實現自己的web客戶端 瀏覽器 爬蟲 和web...

詳解 HTTP協議 (一) HTTP 介紹

http 簡介 http協議是hyper text transfer protocol 超文字傳輸協議 的縮寫,是用於從全球資訊網 www world wide web 伺服器傳輸超文字到本地瀏覽器的傳送協議。http是乙個基於tcp ip通行協議來傳遞資料 html檔案 檔案 查詢結果等 http...