http/2 使用和 http/1.1 一樣的 「http」 和 「https」 的 url 模式。同時 http/2 和 http/1.1 也共享了相同的預設埠號:」http」 的 80 埠,」https」 的 443 埠。
字串 「h2c」 標示執行在明文 tcp 之上的 http/2 協議(http模式);
字串 「h2」 標示使用了 tls的 http/2 協議(https模式);
請求頭示例:
如果服務端不支援 http/2,它會忽略 upgrade 字段,直接返回 http/1.1 響應,例如:
如果服務端支援 http/2,那就可以回應 101 狀態碼及對應頭部,並且在響應正文中可以直接使用 http/2 二進位制幀:
使用場景:url模式為http的場景;
使用注意:需要請求鏈路中的所有七層裝置識別upgrade欄位;
檢視這裡
使用場景:url模式為https的場景;
使用注意:需要客戶端和服務端支援alpn協議;
參考:
http2 協議協商過程
http 2 協議剛剛發布不久,http1.1的伺服器和客戶端依然大量存在,新老協議必定長期共存一段時間。這樣,瀏覽器和伺服器就需要協商使用何種協議進行通訊。主流的方法是使用alpn或者npn來做協商。區別是有的。就在於誰持有會話協議的決定權。alpn是由客戶端給伺服器傳送乙個協議清單,由伺服器來最...
公升級HTTP 2協議
首先只有使用https協議的站點可以公升級http 2協議 nginx如果想要公升級http 2需要滿足以下要求 nginx版本要高於1.9.5 with http ssl module 跟 with http v2 module 必帶 因為http2.0協議需要使用https協議。yum inst...
http2協議的理解
http2的優點 1.多路復用。基於同乙個連線 並行傳送多個請求。2.服務端推送。nginx還不支援。3.請求頭部壓縮。服務端和客戶端,建立連線後需要共同維護乙個頭部表。後面的請求,只需攜帶跟上一次請求不同的頭部字段資訊。4.二進位制楨。有兩種http2協議 一 瀏覽器實現的http2協議 1.必須...