HTTP 協議支持GZIP 壓縮機制,也稱協議壓縮。
HTTP GZIP壓縮是由WEB服務器和瀏覽器共同遵守的協議,目前主流的服務器和瀏覽器都支持GZIP壓縮技術。
協議壓縮就是依據HTTP協議進行壓縮,不需要程序員進行壓縮,解壓編碼,而是把壓縮過程交給WEB服務器,將解壓過程交給客戶端。 如果客戶端為支持GZIP壓縮的瀏覽器,那么解壓過程也不需要程序員參與,瀏覽器會按照一定的規則自動進行解壓縮
客戶端發送請求,服務端壓縮響應數據返給客戶端
1 客戶端請求中增加Accept-Encoding: gzip,表示客戶端要求服務端進行GZIP壓縮;
2 服務端看響應內容的類型是否滿足服務器配置的需要壓縮的類型,如果符合,那么WEB服務器在傳輸響應內容之前,會對響應內容進行壓縮,並在響應頭中添加Content-Encoding gzip;如果不符合,那么將不壓縮,直接返回。
服務端接收到請求后,將結果通過gzip壓縮后返回給客戶端並在響應頭中增加Content-Encodin:gzip 表示響應數據已被壓縮;
3 客戶端接收到響應,如果響應頭中包含Content-Encoding GZIP,那么瀏覽器會自動將響應內容進行GZIP解壓縮,然后再呈現在頁面上。如果不包含,那么將直接呈現在頁面上;