http:hype-text transfer protocol,超文字傳輸協議,超文字(html)在網路間(電腦與電腦之間)傳輸過程中所遵循的一些規則。
兩台電腦之間要實現資料傳輸的條件
1.兩台電腦必須要互聯(通過網線:tcp/ip)
2.資料的傳輸要遵循http協議。(b/s結構的系統)
http協議特點
支援客戶/伺服器模式:不限於b/s結構,凡是b/s結構都必須遵循htto協議
簡單快速:只需請求方法和路徑。如(其中http是請求方法
靈活【任意資料】:可以傳輸任意資料
無連線【每次連線只處理乙個請求】:每次請求值會處理一次,返回乙個結果,需要再獲取其他資料就必須重新請求
無狀態:伺服器在處理兩次請求的時候區分不出來是否兩個請求來自同乙個瀏覽器(所以存在session和cookie技術)
url和uri的區別:
url:統一資源定位,指的是通過http協議,以及伺服器的所在網域名稱加上對應檔案的路徑組成的乙個網路絕對路徑
例:uri:uniformed resource identifier,統一資源標識,指的是乙個檔案在**伺服器相對**根目錄的路徑
如:/ask/daily.html
當我們傳送乙個請求時都在了哪些事情呢?
1.找hosts檔案,匹配ip位址,如果本地hosts檔案匹配成功會返回對應的ip,如果失敗了會去外網的dns伺服器去匹配ip位址
2.瀏覽器封裝http請求協議
2.1協議封裝的內容:
host:請求網域名稱
請求檔案
3.通過http協議傳輸請求,發給對應ip的電腦,web請求預設埠80,apache通過監聽,獲取請求,進行處理
4.apache封裝http響應協議,並將資料交給客戶端瀏覽器
5.瀏覽器拿到資料後解析http協議,解析內容,顯示內容。
如圖:
http協議
http協議分為兩個部分:http請求,http響應
http請求:
http請求分為四個部分:
請求行:包含三部分內容
請求方式:get/post
uri:要請求的檔案路徑
協議版本:http/1.1
請求頭:請求頭就是一項一項的規範(協議的真正內容),乙個內容佔一行,常見如下:
host:所請求的主機位址
accept-encoding:可以接受的資料的編碼,是什麼流檔案(檔案內容)
referer:引用,指從哪個介面過來的(跳轉過來)
connection:連線,在本次請求的過程中,直到伺服器把資料全部交還給瀏覽器,兩者之間一直保持連線狀態
accept-language:瀏覽器可以接受的語言
cookie:瀏覽器攜帶提供給伺服器的cookie資料(報存在瀏覽器cookie中的資料)
user-agent:瀏覽器資訊
accept:瀏覽器可以接收伺服器返回的資料型別
content-length(post):瀏覽器交給伺服器的資料長度
if-modified-since(get):表示瀏覽器當前訪問過某個介面,而進行再次訪問,該時間是上次請求快取檔案的時間
content-type(post):提交的檔案的型別
空行:用於區分請求頭和請求體。
請求體:只有post提交資料的時候才會有資訊
簡析HTTP協議(一)
首先說說協議 協議就是要通訊的雙方制定的,都需要用到的規定。比如南方人和北方人,各說各的家鄉話,雙方都聽不懂,無法交流,但如果他們約定好都說普通話,那交流就不成問題了。說普通話 就是這兩個人制定的協議。百科裡的說法 協議是用來描述程序之間資訊交換資料時的規則術語。其實就是網路上的各台計算機之間進行通...
HTTP 協議簡析
http是乙個屬於應用層的面向兌現的協議,由於其簡捷 快速的方式,適用於分布式超 資訊系統。它與1990年提出。目前使用的版本是http 1.1版本。http協議 協議是指兩台計算機之間進行通訊必須共同遵守的規定或者規則。超文字傳輸協議是一種通訊協議,它允許將超文字標記語言文件從web伺服器傳送到客...
HTTP協議 簡析
http 超文字傳輸協議 hypertext transfer protocol 是網際網路上應用最為廣泛的一種網路協議,是所有的www檔案都必須遵守的標準。http協議是乙個基於tcp協議,屬於應用層的,物件導向的,無狀態的,無連線的協議。其簡單快捷,客戶向伺服器請求服務時,只需要傳送請求方法和路...