#http 介紹http 的請求部分http 請求的基本結構請求行詳解 HTTP 請求訊息標頭Http 響應詳解http 回應的基本結構狀態行http 回應訊息標頭詳解Expires、Pragma、Cache-Control 設定不緩存Expires、Pragma、Cache-Control 設定 指定快取時間HTTP 請求的細節——通用資訊頭
http 協定是建立在tcp/ip 協定基礎上
http 協定全名為超文本傳輸協定( HTTP
,HyperText Transfer Protocol )http 協定版本1.0 1.1 2.0
http 1.0 成為短連接,http 1.1 稱為長連接
#所謂長和短是指持續時間長連線1.1 30s 短連線發送完資料立刻斷開
Http定義了與伺服器互動的不同方法,最基本的方法有4種,分別是GET,POST,PUT,DELETE。 URL全名為資源描述符,我們可以這樣認為:一個U RL位址,它用來描述一個網路上的資源,而HTTP中的G ET,POST,PUT,DELETE就對應著對這個資源的查,改,增,刪4個操作。到這裡,大家應該有個大概的了解了,GET一般用於獲取/查詢資源信息,而POST一般用於更新資源信息。
#http 請求的基本結構
請求行訊息頭
一空行
請求行
請求方式有:post、get、options、delete、trace、put
###### ## 常用的有:post、get################## post 與get區別:##########GET使用URL或Cookie傳參。而POST將資料放在BODY中。
GET的URL會有長度上的限制,則POST的資料則可以非常大。
POST比GET安全,因為資料在網址列上不可見。
#Accept :告訴伺服器我可以接受的文件類型瀏覽器可接受的MIME類型
#Accept-Charset:瀏覽器可接受的字元集編碼
Accept-Encoding:可以接受以某種格式壓縮後的資料例如:gzip 、compress。瀏覽器能夠進行解碼的資料編碼方式
#Accept-Langage:瀏覽器支援的語言
##Host:表示我要找的主機是誰
Referer:告訴伺服器,我來自哪裡。訊息頭,常用於防止盜鏈。
關於如何防止盜鏈的個人理解:
#盜鏈:盜鍊是指服務提供者本身不提供服務的內容,透過技術手段繞過其它有利益的最終用戶介面(如廣告),直接在自己的網站上向最終用戶提供其它服務提供者的服務內容,騙取最終用戶的瀏覽和點擊率。提供資源或提供很少的資源,而真正的服務提供者卻得不到任何的收益。位置。 ##User-Agent:告訴伺服器,瀏覽器核心。之一
Connection:表示是否需要持久連線。到請求使用的是HTTP 1.1 (HTTP 1.1預設進行持久連接),它可以利用持久連接的優點,當頁麵包含多個元素時(例如Applet,圖片),顯著地減少下載所需的時間。這一點,Servlet需要在應答中傳送一個Content-Length頭,最簡單的實作方法是:先把內容寫入 ByteArrayOutputStream,然後在正式寫出內容之前計算它的大小。
Date:瀏覽器發送該 http 請求的時間。
Content-Length:表示請求訊息正文的長度。
UA-Pixels,UA-Color,UA-OS,UA-CPU:由某些版本的IE瀏覽器發送的非標準的請求頭,表示螢幕大小、顏色深度、作業系統和CPU類型。
## 狀態列
多個訊息頭
狀態列
格式: http版本號狀態碼原因敘述719f572dc95af346278bdd6251cfc5d3
範例:HTTP/1.1 200 OK
######### 狀態碼用來表示伺服器對請求的處理結果,它是一個三維的十進位數。響應狀態碼分為5類。 ###########################狀態碼 | 意思 |
---|---|
100~199 | #表示成功接收請求,要求客戶端繼續提交下次請求才能完成整個處理過程 |
#200~299 | ##表示成功接收請求並已完成整個處理過程。 常用200 |
300~399 | ##為完成請求,客戶端需進一步細化請求,例如:請求的資源已經移動一個新位址,常用302、307 |
客戶端的請求有錯誤。常用404 | |
伺服器端出現錯誤, 常用500 |
以上是HTTP協定深度解析的詳細內容。更多資訊請關注PHP中文網其他相關文章!