最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Apache啟用GZIP壓縮網(wǎng)頁(yè)傳輸方法

 更新時(shí)間:2013年06月12日 20:37:13   投稿:mdxy-dxy  
上一篇文章我們已經(jīng)介紹了Apache啟用GZIP壓縮網(wǎng)頁(yè)的方法,這里又發(fā)現(xiàn)了一篇好文章,特分享給大家

首先我們先了解Apache Gzip的相關(guān)資料。

一、gzip介紹

Gzip是一種流行的文件壓縮算法,現(xiàn)在的應(yīng)用十分廣泛,尤其是在Linux平臺(tái)。當(dāng)應(yīng)用Gzip壓縮到一個(gè)純文本文件時(shí),效果是非常明顯的,大約可以減少70%以上的文件大小。這取決于文件中的內(nèi)容。 利用Apache中的Gzip模塊,我們可以使用Gzip壓縮算法來對(duì)Apache服務(wù)器發(fā)布的網(wǎng)頁(yè)內(nèi)容進(jìn)行壓縮后再傳輸?shù)娇蛻舳藶g覽器。這樣經(jīng)過壓縮后實(shí)際上降低了網(wǎng)絡(luò)傳輸?shù)淖止?jié)數(shù),最明顯的好處就是可以加快網(wǎng)頁(yè)加載的速度。

網(wǎng)頁(yè)加載速度加快的好處不言而喻,除了節(jié)省流量,改善用戶的瀏覽體驗(yàn)外,另一個(gè)潛在的好處是Gzip與搜索引擎的抓取工具有著更好的關(guān)系。

二、Web服務(wù)器處理

HTTP壓縮的過程如下:

Web服務(wù)器接收到瀏覽器的HTTP請(qǐng)求后,檢查瀏覽器是否支持HTTP壓縮(Accept-Encoding 信息);

如果瀏覽器支持HTTP壓縮,Web服務(wù)器檢查請(qǐng)求文件的后綴名;

如果請(qǐng)求文件是HTML、CSS等靜態(tài)文件,Web服務(wù)器到壓縮緩沖目錄中檢查是否已經(jīng)存在請(qǐng)求文件的最新壓縮文件;

如果請(qǐng)求文件的壓縮文件不存在,Web服務(wù)器向?yàn)g覽器返回未壓縮的請(qǐng)求文件,并在壓縮緩沖目錄中存放請(qǐng)求文件的壓縮文件;

如果請(qǐng)求文件的最新壓縮文件已經(jīng)存在,則直接返回請(qǐng)求文件的壓縮文件;

如果請(qǐng)求文件是動(dòng)態(tài)文件,Web服務(wù)器動(dòng)態(tài)壓縮內(nèi)容并返回瀏覽器,壓縮內(nèi)容不存放到壓縮緩存目錄中。

三、開啟Gzip

Apache利用Gzip壓縮算法進(jìn)行壓縮的模塊有兩種:mod_gzip 和mod_deflate。

現(xiàn)在瀏覽器本身也自動(dòng)Gzip壓縮功能,支持Accept-Encoding: gzip,deflate ,這里我在firefox瀏覽器下測(cè)試。

通過查看HTTP頭,我們可以快速判斷使用的客戶端瀏覽器是否支持接受gzip壓縮。

若發(fā)送的HTTP頭中出現(xiàn)以下信息,則表明你的瀏覽器支持接受相應(yīng)的gzip壓縮:

Accept-Encoding: gzip 支持mod_gzip

Accept-Encoding: deflate 支持mod_deflate

Accept-Encoding: gzip,deflate

同時(shí)支持mod_gzip 和mod_deflate Apache內(nèi)置有mod_deflate模塊來啟用gzip功能,但假如安裝apache的時(shí)候沒有編譯相關(guān)模塊,就需要你手動(dòng)安裝一次,以啟用它:

首先到你的apache源碼目錄,查找到mod_deflate.c文件 ,通常位置:apachehttpd源碼目錄/modules/filters/mod_deflate.c,進(jìn)入上面找到的目錄運(yùn)行下面的命令:

/usr/local/apache2/bin/apxs -i -c -a mod_deflate.c

注:apxs目錄請(qǐng)參照您自己的機(jī)器,通常在apache安裝目錄的bin目錄下。

安裝完成,到apache的modules目錄看看是不是有了mod_deflates.so,httpd.conf中打開deflate_Module和headers_Module模塊:

LoadModule deflate_module modules/mod_deflate.so

加載mod_deflate.so模塊,默認(rèn)安裝會(huì)自動(dòng)寫入httpd.conf。

如果服務(wù)器開啟了對(duì)Gzip組件的支持,那么我們就可以在http.conf定制文件壓縮,下面是一個(gè)配置的簡(jiǎn)單實(shí)例:

1、mod_gzip方式

復(fù)制代碼 代碼如下:

# mod_gzip
<ifModule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$
mod_gzip_item_include handler ^cgi-script$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^application/x-javascript.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
<ifModule>


2、deflate_Module方式
(1)嚴(yán)格匹配文件類型

復(fù)制代碼 代碼如下:

# mod_deflate:
<ifmodule mod_deflate.c>
DeflateCompressionLevel 6 #壓縮率, 6是建議值.
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/php
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/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
AddOutputFilterByType DEFLATE image/gif image/png image/jpe image/swf image/jpeg image/bmp
# Don't compress images and other #排除不需要壓縮的文件
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
SetEnvIfNoCase Request_URI .(?:html|htm)$ no-gzip dont-varySetEnvIfNoCase
#SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI .(?:pdf|doc)$ no-gzip dont-vary
</ifmodule>


(2)過濾文件類型

復(fù)制代碼 代碼如下:

# mod_deflate:
<ifmodule mod_deflate.c>
DeflateCompressionLevel 6
SetOutputFilter DEFLATE #壓縮所有文件
#Don't compress images and other #過濾不需要壓縮文件
#SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI .(?:html|htm)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI .(?:pdf|doc)$ no-gzip dont-vary
</IfModule>


文件MIME類型可以根據(jù)自己情況添加,也可以通過瀏覽器查看connect-type:

 

四、mod_gzip 和mod_deflate的主要區(qū)別是什么?(來自互聯(lián)網(wǎng))

首先一個(gè)區(qū)別是安裝它們的Apache Web服務(wù)器版本的差異。Apache 1.x系列沒有內(nèi)建網(wǎng)頁(yè)壓縮技術(shù),所以才去用額外的第三方mod_gzip 模塊來執(zhí)行壓縮。而Apache 2.x官方在開發(fā)的時(shí)候,就把網(wǎng)頁(yè)壓縮考慮進(jìn)去,內(nèi)建了mod_deflate 這個(gè)模塊,用以取代mod_gzip。雖然兩者都是使用的Gzip壓縮算法,它們的運(yùn)作原理是類似的。 第二個(gè)區(qū)別是壓縮質(zhì)量。mod_deflate 壓縮速度略快而mod_gzip 的壓縮比略高。一般默認(rèn)情況下,mod_gzip 會(huì)比mod_deflate 多出4%~6%的壓縮量。 那么,為什么使用mod_deflate?第三個(gè)區(qū)別是對(duì)服務(wù)器資源的占用。 一般來說mod_gzip 對(duì)服務(wù)器CPU的占用要高一些。mod_deflate 是專門為確保服務(wù)器的性能而使用的一個(gè)壓縮模塊,mod_deflate 需要較少的資源來壓縮文件。這意味著在高流量的服務(wù)器,使用mod_deflate 可能會(huì)比mod_gzip 加載速度更快。  

五、效果

沒有啟動(dòng)Gzip壓縮:

啟動(dòng)Gzip壓縮:

大小由10.7K到1.5K,如果文件較大,那么效果會(huì)更明顯。

相關(guān)文章

  • linux中數(shù)據(jù)庫(kù)的定時(shí)備份

    linux中數(shù)據(jù)庫(kù)的定時(shí)備份

    這篇文章主要介紹了linux中數(shù)據(jù)庫(kù)的定時(shí)備份的相關(guān)資料,需要的朋友可以參考下
    2023-05-05
  • linux系統(tǒng)下oracle11gR2靜默安裝的經(jīng)驗(yàn)分享

    linux系統(tǒng)下oracle11gR2靜默安裝的經(jīng)驗(yàn)分享

    這篇文章主要介紹了linux系統(tǒng)下oracle11gR2靜默安裝的經(jīng)驗(yàn), 所有操作無需使用圖形界面. 靜默安裝能減少安裝出錯(cuò)的可能性, 也能大大加快安裝速度。有需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-01-01
  • CentOS 7 安裝Chrome瀏覽器的方法

    CentOS 7 安裝Chrome瀏覽器的方法

    這篇文章主要介紹了CentOS 7 安裝Chrome瀏覽器的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-12-12
  • Ubuntu下查看ssh服務(wù)是否安裝或啟動(dòng)的方法

    Ubuntu下查看ssh服務(wù)是否安裝或啟動(dòng)的方法

    這篇文章主要介紹了Ubuntu下查看ssh服務(wù)是否安裝或啟動(dòng)的方法,文中給出了詳細(xì)的方法示例,對(duì)大家具有一定的參考借鑒價(jià)值,有需要的朋友們下面來一起看看吧。
    2017-01-01
  • Linux netstat命令安裝方式

    Linux netstat命令安裝方式

    這篇文章主要介紹了Linux netstat命令安裝方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • Apache虛擬目錄簡(jiǎn)單知識(shí)匯總

    Apache虛擬目錄簡(jiǎn)單知識(shí)匯總

    本文給大家匯總介紹了Apache的虛擬目錄的簡(jiǎn)單使用方法的知識(shí),非常的簡(jiǎn)單實(shí)用,有需要的小伙伴可以參考下
    2018-08-08
  • 讓apache也支持asp環(huán)境的方法

    讓apache也支持asp環(huán)境的方法

    由于apache和php合作好,各方法都優(yōu)于asp在apache上的運(yùn)行所以默認(rèn)的apache是沒有這個(gè)模塊的,相 關(guān)的教程也少,我們要想讓apache可運(yùn)行asp只要加載mod_aspdotnet-2.2.0.2006-setup-r2.msi這個(gè)模塊就好了
    2014-05-05
  • Linux7.7設(shè)置交換分區(qū)SWAP的方法

    Linux7.7設(shè)置交換分區(qū)SWAP的方法

    這篇文章主要介紹了Linux7.7設(shè)置交換分區(qū)SWAP的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • 詳解CentOS 6.4 添加永久靜態(tài)路由所有方法匯總

    詳解CentOS 6.4 添加永久靜態(tài)路由所有方法匯總

    這篇文章主要介紹了詳解CentOS 6.4 添加永久靜態(tài)路由所有方法匯總,非常具有實(shí)用價(jià)值,需要的朋友可以參考下。
    2016-12-12
  • linux中設(shè)置nexus開機(jī)自啟動(dòng)的方法

    linux中設(shè)置nexus開機(jī)自啟動(dòng)的方法

    這篇文章主要介紹了linux中設(shè)置nexus開機(jī)自啟動(dòng)的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-02-02

最新評(píng)論

通城县| 安达市| 泾源县| 台南市| 平顺县| 桂平市| 南岸区| 库尔勒市| 社旗县| 弋阳县| 衡阳市| 尚义县| 玉龙| 武隆县| 财经| 江西省| 梁平县| 腾冲县| 罗城| 津南区| 榆中县| 祥云县| 新竹县| 洪江市| 胶州市| 阳城县| 筠连县| 蛟河市| 岗巴县| 瓦房店市| 延川县| 莎车县| 郯城县| 盘山县| 鹤岗市| 吴忠市| 开鲁县| 丹寨县| 天气| 陆丰市| 砚山县|