HTTP協議實現伺服器瀏覽器代碼文本壓縮

來源:互聯網
上載者:User

標籤:

HTTP協議實現伺服器瀏覽器代碼文本壓縮

一般我們在對網站進行最佳化是,一定會用到的一個就是文本代碼壓縮,我們壓縮的一般都是文字格式設定檔案,因為壓縮效果明顯,若果對視頻等進行壓縮,效果不大,並且耗費伺服器和用戶端的CPU來進行壓縮和解壓,得不償失。

    廢話多多說,我們上網是,使用瀏覽器F12來進行代碼調試抓包時,:

上面:深色顯示的Accpet-Encoding就是我們用戶端發送給伺服器,告訴伺服器我們所支援的壓縮格式,每個瀏覽器所支援的格式不一樣。

 

廢話不多說,如何?伺服器壓縮呢?

主要分為兩步:

第一步:在Apache的伺服器中http.conf中開啟mod_deflate.so 模組,即使用deflate壓縮格式,如果支援,伺服器也可以選擇開始gzip等壓縮格式。

目前我們比較常見的有:gzip,deflate,compress以及Google的sdch格式

LoadModule deflate_module modules/mod_deflate.so

然後重啟 httpd –k restart

    第二步:在http.conf中添加一下代碼,即告訴伺服器對那些代碼進行壓縮,並且指定壓縮層級

 

<ifmodule mod_deflate.c>        #如果開啟了mod_deflate模組,則運行下面代碼

DeflateCompressionLevel 6        #壓縮層級為6 ,一般支援 1-9,數字越高,壓縮層級越大

AddOutputFilterByType DEFLATE text/plain        #對文字檔代碼進行壓縮

AddOutputFilterByType DEFLATE text/html        #對html檔案代碼進行壓縮

AddOutputFilterByType DEFLATE text/xml        #對xml檔案代碼進行壓縮

AddOutputFilterByType DEFLATE text/css        #對css檔案代碼進行壓縮

AddOutputFilterByType DEFLATE text/javascript    #對指令檔代碼進行壓縮

AddOutputFilterByType DEFLATE application/xhtml+xml

AddOutputFilterByType DEFLATE application/xml

AddOutputFilterByType DEFLATE application/rss+xml

AddOutputFilterByType DEFLATE application/atom_xml

AddOutputFilterByType DEFLATE application/x-javascript

AddOutputFilterByType DEFLATE application/x-httpd-php

AddOutputFilterByType DEFLATE image/svg+xml

</ifmodule>

 

 

基本的都介紹完了,下面我們來做實驗看效果:

未開啟伺服器壓縮:

,展示的是當我們的網站頁面未進行壓縮時,請求伺服器返回的原始碼檔案大小為

Content-Length = 208 位元組(注意圖,等下和進行對比)

 

 

開啟伺服器壓縮後:

和上面的對比,我們發現,此時,相同的一個網頁,請求伺服器返回的代碼檔案大小為

Content-Length = 148 位元組,節省了60個位元組的大小,效果是很驚人的

特別注意瀏覽器返回的資訊中還特別說明了壓縮格式

Content-Encoding:gzip 告訴用戶端使用的是gzip格式的壓縮方式

在比較大型的門戶網站中,對代碼進行壓縮,可以省去大量的網站流量,節省大量的伺服器資源,效果不可想象

 

 

小技巧:

當我們學習使用時,我們可以不發送Accpet-Encoding來採集未壓縮的原始碼。

HTTP協議實現伺服器瀏覽器代碼文本壓縮

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.