HTTP HTTPS

HTTP

超文本傳輸協(xié)議 Hyper Text
Transfer Protocol络断,是符合TCP標(biāo)準(zhǔn)的應(yīng)用層射亏,以明文方式發(fā)送內(nèi)容谜嫉,不提供任何方式的數(shù)據(jù)加密湘纵。

請求方法

GET POST PUT HEAD OPTIONS DELETE TRACE CONNECT

請求頭

通用頭 請求頭 響應(yīng)頭 實(shí)體頭

連接
  1. 短連接: 1.0默認(rèn)使用短連接,即每次請求都要重新發(fā)起連接分瘦,數(shù)據(jù)交換結(jié)束即關(guān)閉連接
  2. 長連接:1.1起默認(rèn)使用長連接蘸泻,連接建立后不斷開琉苇。
各版本
1.0
  1. 默認(rèn)使用短連接
  2. 使用if-modified-since expires來做緩存判斷標(biāo)準(zhǔn)
  3. 存在帶寬浪費(fèi)現(xiàn)象嘲玫,比如客戶端僅需要對象的一部分,服務(wù)端將整個對象送來
1.1
  1. 默認(rèn)使用長連接
  2. 引入更多緩存判斷標(biāo)準(zhǔn)Etag if-None-Match
  3. 允許請求資源的某個部分
  4. 新增了24個狀態(tài)碼
2.0
  1. 允許多路復(fù)用并扇,做到同一個連接并發(fā)處理多個請求
  2. 支持二進(jìn)制編碼
  3. 將相同的首部進(jìn)行壓縮去团,不重復(fù)傳輸
  4. 流量控制
  5. 支持服務(wù)器推送(CSS和JS一起發(fā)送),不僅只是客戶端發(fā)起請求穷蛹,服務(wù)端可以自己發(fā)送一些數(shù)據(jù)土陪。
3.0

1、QUIC (Quick UDP Internet Connections)是基于UDP協(xié)議的肴熏。
2鬼雀、解決了 TCP 的隊(duì)頭阻塞問題(某一個流的數(shù)據(jù)有丟包,則同樣會阻塞在它之后傳輸?shù)牧鲾?shù)據(jù)傳輸)蛙吏。而 http3.0 中不同的流之間真正的實(shí)現(xiàn)相互獨(dú)立傳輸源哩,互不干擾。
3鸦做、在切換網(wǎng)絡(luò)時的依舊保持連接励烦。

狀態(tài)碼
狀態(tài)碼 解釋
100 服務(wù)器收到了請求,請客戶端繼續(xù)發(fā)送 1XX是1.1版本新定義的泼诱,可以優(yōu)化某些場景坛掠,比如:客戶端有一個較大的文件需要上傳并保存,但是客戶端并不知道服務(wù)端是否愿意接受這個文件治筒,所以希望在消耗網(wǎng)絡(luò)資源進(jìn)行傳輸之前屉栓,先詢問服務(wù)器的意愿,實(shí)際操作為耸袜,請求頭加上Expect: 100-coninue友多, 若服務(wù)器接受,返回100句灌,否則417
200 請求成功
201 成功請求并創(chuàng)建了新資源
202 已接受請求夷陋,但未處理完成
203 非授權(quán)信息
204 服務(wù)器成功處理欠拾,但未返回內(nèi)容
301 請求的資源已被永久的移動到新URL,返回信息會包括新的URL
302 資源臨時被移動骗绕,客戶端應(yīng)繼續(xù)使用原有URL
303 使用GET和POST請求查看其他地址
304 請求已被允許藐窄,但文檔的內(nèi)容并沒有改變(緩存)
305 所請求的資源必須通過代理訪問
307 使用GET請求重定向
400 請求無效,前端數(shù)據(jù)與后端數(shù)據(jù)不一致酬土,請求格式不對
401 當(dāng)前請求需要用戶驗(yàn)證
403 服務(wù)器已經(jīng)得到請求荆忍,但是拒絕執(zhí)行,比如身份驗(yàn)證不通過
404 服務(wù)器無法根據(jù)客戶端的請求找到資源
405 客戶端請求中的方法被禁止
408 服務(wù)器等待客戶端發(fā)送的請求時間過長撤缴,請求超時
410 客戶端請求的資源已經(jīng)不存在
413 由于請求的實(shí)體過大刹枉,服務(wù)器無法處理,因此拒絕
414 請求的URL過長
415 服務(wù)器無法處理請求附帶的媒體格式
416 客戶端請求的范圍無效
500 服務(wù)器內(nèi)部錯誤屈呕,無法完成請求
501 這個狀態(tài)碼不常見微宝,意思是未實(shí)現(xiàn),這個解釋會給人誤導(dǎo)虎眨,并不是意味著我們訪問了一個未實(shí)現(xiàn)的api蟋软,而是服務(wù)器目前不具備滿足您對該內(nèi)容請求的功能, 比如服務(wù)器脫機(jī)了
503 由于超載或系統(tǒng)維護(hù)嗽桩,服務(wù)器暫時無法處理客戶端的請求
505 服務(wù)器不支持請求的http協(xié)議的版本

HTTPS

HTTPS在HTTP的基礎(chǔ)上加入了SSL協(xié)議岳守,SSL依靠證書來驗(yàn)證服務(wù)器的身份,并未瀏覽器和服務(wù)器之間的通信加密碌冶。簡單來說是HTTP的安全版湿痢。
SSL(Secure Sockets Layer)最初由網(wǎng)景公司設(shè)計(1994),用來加密HTTP協(xié)議傳輸?shù)臄?shù)據(jù).

主要區(qū)別

  1. HTTPS需要到CA申請證書扑庞,一般需要一定費(fèi)用
  2. HTTPS安全性更高
  3. HTTP的默認(rèn)端口是80譬重,HTTPS是443
  4. HTTP本身是無狀態(tài)的,非常簡單的協(xié)議嫩挤;HTTPS是由SSL+HTTP構(gòu)建的可進(jìn)行加密傳輸害幅、身份認(rèn)證的網(wǎng)絡(luò)協(xié)議,它是有狀態(tài)的岂昭。
  5. https更消耗時間和資源(ssl部分需額外花費(fèi)三倍時間)
  6. https在SEO方面以现,谷歌搜索引擎算法中給了https加密的網(wǎng)站更高的排名。

HTTPS的工作原理

  1. 用戶在瀏覽器輸入一個https網(wǎng)址约啊,連接到對應(yīng)server的443端口
  2. 采用HTTPS協(xié)議的服務(wù)器必須要有一套數(shù)字證書邑遏,可以自己制作,也可以向組織申請恰矩,自己制作的證書需要客戶端驗(yàn)證通過才可以繼續(xù)訪問记盒。
    這個證書就是一對公鑰和私鑰。私鑰相當(dāng)于鑰匙外傅,公鑰相當(dāng)于鎖纪吮,
  3. 服務(wù)端傳送證書給客戶端(公鑰俩檬,相當(dāng)于把鎖給別人,別人可以用這把鎖把重要的東西鎖起來碾盟,然后發(fā)給你棚辽,因?yàn)橹挥心阋粋€人有鑰匙,所以只有你才能看到)
  4. 客戶端解析證書冰肴,由客戶端的TLS來完成屈藐。
    TLS/SSL 安全傳輸層協(xié)議,用于在兩個通信應(yīng)用程序之間提供保密性和數(shù)據(jù)完整性熙尉。TLS是SSL的升級版联逻,二者經(jīng)常混用检痰,小編也說不清楚包归,總之是先有了SSL1.0 2.0,但各種bug攀细,后來直接推出了TLS1.0箫踩,又有了SSL3.0。
    那么TLS確認(rèn)保證公鑰不是被篡改的谭贪。TLS會確認(rèn)證書中的頒發(fā)機(jī)構(gòu)和過期時間,只要證書是可信的锦担,那么公鑰就是可信的俭识。
    如果證書沒有問題,就會生成一個隨機(jī)值洞渔,然后用公鑰對該隨機(jī)值進(jìn)行加密套媚。
  5. 客戶端傳送隨機(jī)值給服務(wù)端
  6. 客戶端用私鑰解密公鑰(鎖)之后,得到隨機(jī)值磁椒,然后之后的傳輸都用該隨機(jī)值所謂私鑰進(jìn)行對稱加密傳遞信息堤瘤。
對稱加密和非對稱加密方法列舉
  1. 非對稱加密: RSA DSA
  2. 對稱加密: AES RC4
  3. HASH加密: MD5 SHA1
HTTPS的優(yōu)缺點(diǎn)
優(yōu)點(diǎn)
  1. 安全
缺點(diǎn)
  1. 握手階段費(fèi)時
  2. https 緩存不如 http 高效,增加數(shù)據(jù)開銷浆熔。
  3. SSL 證書消耗成本本辐,功能越強(qiáng)大的證書費(fèi)用越高。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末医增,一起剝皮案震驚了整個濱河市慎皱,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌叶骨,老刑警劉巖茫多,帶你破解...
    沈念sama閱讀 206,378評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異忽刽,居然都是意外死亡天揖,警方通過查閱死者的電腦和手機(jī)夺欲,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,356評論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來今膊,“玉大人洁闰,你說我怎么就攤上這事⊥蛳福” “怎么了扑眉?”我有些...
    開封第一講書人閱讀 152,702評論 0 342
  • 文/不壞的土叔 我叫張陵,是天一觀的道長赖钞。 經(jīng)常有香客問我腰素,道長,這世上最難降的妖魔是什么雪营? 我笑而不...
    開封第一講書人閱讀 55,259評論 1 279
  • 正文 為了忘掉前任弓千,我火速辦了婚禮,結(jié)果婚禮上献起,老公的妹妹穿的比我還像新娘洋访。我一直安慰自己,他們只是感情好谴餐,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,263評論 5 371
  • 文/花漫 我一把揭開白布姻政。 她就那樣靜靜地躺著,像睡著了一般岂嗓。 火紅的嫁衣襯著肌膚如雪汁展。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,036評論 1 285
  • 那天厌殉,我揣著相機(jī)與錄音食绿,去河邊找鬼。 笑死公罕,一個胖子當(dāng)著我的面吹牛器紧,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播楼眷,決...
    沈念sama閱讀 38,349評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼铲汪,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了摩桶?” 一聲冷哼從身側(cè)響起桥状,我...
    開封第一講書人閱讀 36,979評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎硝清,沒想到半個月后辅斟,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,469評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡芦拿,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,938評論 2 323
  • 正文 我和宋清朗相戀三年士飒,在試婚紗的時候發(fā)現(xiàn)自己被綠了查邢。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,059評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡酵幕,死狀恐怖扰藕,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情芳撒,我是刑警寧澤邓深,帶...
    沈念sama閱讀 33,703評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站笔刹,受9級特大地震影響芥备,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜舌菜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,257評論 3 307
  • 文/蒙蒙 一萌壳、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧日月,春花似錦袱瓮、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,262評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至台颠,卻和暖如春褐望,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背串前。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留实蔽,地道東北人荡碾。 一個月前我還...
    沈念sama閱讀 45,501評論 2 354
  • 正文 我出身青樓,卻偏偏與公主長得像局装,于是被迫代替她去往敵國和親坛吁。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,792評論 2 345

推薦閱讀更多精彩內(nèi)容