文章專區

網頁程式技術探討

HTTP/2 是什麼

   HTTP/2是什麼?在網站伺服器與瀏覽器相互連結工作之間,使用了一項全球資訊網基礎的 HTTP(超文本傳輸協定) 通訊協定,其中最為廣泛應用的版本為1999年發布的 HTTP/1.1,也是網站伺服器與瀏覽器配合使用最久的協定版本,其中相隔經歷了16個年頭,在2015年時才又正式的發佈了最新的協定版本,那就是 HTTP/2(超文字傳輸協定第2版),也是正式的準備取代 HTTP 1.1成為現今 HTTP 的實現標準。

 
  相隔了十六年後的更新,HTTP/2 的釋出帶來了網站瀏覽的全新體驗,不僅讓網站瀏覽速度增加,也提供了更安全的連線資訊,同時更兼容了 HTTP/1.1 原有的GET/POST 操作、HTTP Status Code 和各種 HTTP Headers 都沒有改變,因此在不需要修改 HTML/CSS/JavaScript 網頁和你的後端程式伺服器端的情況下,只需要將網站伺服器軟體進行更新並設定,使用者使用支援 HTTP/2 的瀏覽器,就可以體驗這項優化的通訊協定。
 
 
  HTTP/2 與 HTTP/1.1 相差別的幾項工作模式,其中包含了:
 
  1.HTTP/2 協定建置在 HTTPS 安全連線之上,因此在更新 HTTP/2之前,網站必須要擁有 TLS/SSL 安全性憑證來保障安全連線。
  2.在減少多個連線工作次數的情況下,瀏覽器只需單一網路連線就可以與網站伺服器進行連接。
  3.由單一網路連線時達成同時傳輸多個 HTTP Request 和 Response,並擴充增加可以同時請求發送 CSS/JS/Images 等等資源。
  4.優先權設計(Prioritization),伺服器可以決定例如 CSS 或 JavaScript 檔案,哪些要優先傳送。
  5.Header 壓縮,HTTP/2 處理了絕大部份重複的 Headers ,並在傳送前進型壓縮,有效減少了過多重複的資訊也縮短了冗長得傳輸過程。
  6.HTTP/2 使用單一Binary 二進位的封包結構設計,對伺服器和瀏覽器來說,可以更快的解析傳輸資料。
  7.伺服器主動推送資源(Server Push),允許伺服器除了 HTML 之外,連同需要的 CSS/JavaScript/Images 檔案,主動推到瀏覽器的快取之中。
 
  透過以上的調整與擴充功能,讓伺服器與瀏覽器在相互連結工作時能省下更多傳輸時間,也減少了原本複雜的資訊,並兼顧了網站傳輸安全,是項多方改善的優化協定,而應用上特別需注意部分為TLS/SSL 安全性憑證,網站原先使用 HTTP 改成 HTTPS 的這個過程需要較為注意,站內連結與需要連同更換。