HTTP簡介
HTTP 協(xié)議是 Hyper Text Transfer Protocol (超文本傳輸協(xié)議)的縮寫。
是用于從萬維網(wǎng)服務器傳輸超文本到本地瀏覽器的傳送協(xié)議
HTTP是一個基于TCP/IP通信協(xié)議來傳送數(shù)據(jù)(HTML文件、圖片文件、查詢結果)
HTTP工作原理
HTTP 協(xié)議工作于客戶端-服務端。瀏覽器作為HTTP客戶端通過URL想HTTP服務端即web服務器發(fā)送所有請求。
Web服務器有 Apache服務器、IIS服務器 (Internet information Services)等
Web服務器接收到請求后,向客戶端發(fā)送響應信息
HTTP的默認端口是80 ,但是也可以改成其他的
HTTP三點注意事項
HTTP是無連接的:限制每次連接只處理一個請求。服務器處理完客戶請求,并受到客戶應答后,即斷開連接。
HTTP是媒體獨立:只要客戶端和服務器知道如何處理數(shù)據(jù)內(nèi)容,任何類型的數(shù)據(jù)都可以通過HTTP發(fā)送??蛻舳艘约胺掌髦付ㄊ褂眠m合的MIME-type內(nèi)容類型。
HTTP是無狀態(tài):無狀態(tài)協(xié)議,是指對事物的處理沒有記憶功能?;驅е氯绻幚砗罄m(xù)內(nèi)容需要前面信息,則他需要重傳。
HTTP消息結構
HTTP是基于客戶端、服務端(C/S)的架構模型,通過一個可靠的鏈接來交換信息,是一個無狀態(tài)的請求/響應協(xié)議
一個HTTP‘客戶端’是一個應用程序(web瀏覽器或其他任何客戶端),通過連接到服務器達到向服務器發(fā)送一個或多個HTTP請求的目的。
一個HTTP‘服務器’同樣是一個應用程序(通常是一個web服務,如Apache web服務器 或IIS服務器),通過接收客戶端請求并向客戶端發(fā)送HTTP響應數(shù)據(jù)。
HTTP使用統(tǒng)一資源標識符(Uniform Resource Ldentifiers,URL)來傳輸數(shù)據(jù)和建立連接
客戶端請求消息
客戶端發(fā)送一個HTTP請求到服務器的請求包括以下格式:請求行、請求頭部、空行和請求數(shù)據(jù)四個部分組成
服務器響應消息
HTTP響應也由四個部分組成,分別是:狀態(tài)行,消息報頭??招泻晚憫?/p>
(具體看這里http://www.runoob.com/http/http-messages.html)
HTTP請求方法
根據(jù)HTTP標準,HTTP請求可以使用多種請求方法
HTTP1.0定義了三種請求方法:GET、POST、HEAD方法。
HTTP2.0定義了五種請求方法:OPTIONS, PUT, DELETE, TRACE 和 CONNECT 方法。
GET 請求指定的頁面信息,并返回實體主體
HEAD 類似與get請求,只不過返回的響應中沒有具體的內(nèi)容,用于獲取報頭
POST 向指定資源提交數(shù)據(jù)進行處理請求(如:提交表單或上傳文件)。數(shù)據(jù)被包含 在請求體中。POST請求可能會導致新的資源建立和/已有資源的修改。
(其他方法請看http://www.runoob.com/http/http-methods.html)
HTTP響應頭信息
HTTP請求提供了關于請求,響應或者其他的發(fā)送實體的信息。
Allow 服務器支持的請求方法(如GET、POST等)
Content-Encoding 文檔編碼類型
Content-Length 表示內(nèi)容長度
Content-Type 表示后面的文檔屬于什么MIME類型
(其他請看http://www.runoob.com/http/http-header-fields.html)
HTTP狀態(tài)碼
當瀏覽者訪問一個網(wǎng)頁時,瀏覽者的瀏覽器會向網(wǎng)頁所在的服務器發(fā)出請求。
當瀏覽器接收并顯示網(wǎng)頁前,此網(wǎng)頁所在的服務器會返回一個包含HTTP狀態(tài)碼的信息頭(server header)用以響應瀏覽器的請求。
HTTP狀態(tài)碼的英文為 HTTP Status Code
下面是常見的HTTP狀態(tài)碼:
200 - 請求成功
302 - 資源(網(wǎng)頁等) 被永久轉移到其他URL
404 - 請求資源不存在(如網(wǎng)頁)
500 - 內(nèi)部服務器錯誤
HTTP狀態(tài)碼分類
1** 信息,,服務器收到請求,需要請求者繼續(xù)執(zhí)行操作
2** 成功,操作被成功接收并處理
3** 重定向,需要進一步的操作以完成請求
4** 客戶端錯誤,請求包含語法錯誤或無法完成請求
5** 服務器錯誤,服務器在處理請求的過程中國發(fā)生錯誤
(HTTP狀態(tài)碼列表http://www.runoob.com/http/http-status-codes.html)
HTTP content-type
Content-type,內(nèi)容類型,一般是指網(wǎng)頁中存在的Content-type,用于定義網(wǎng)絡文件的類型和網(wǎng)頁的編碼,決定瀏覽器將以什么形式、什么編碼讀取這個文件。
HTTP content-type 對照表
http://www.runoob.com/http/http-content-type.html
Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號