如何在apache中開啟gzip壓縮服務(wù)

服務(wù)器設(shè)置 gzip 壓縮是 web 開發(fā)里很普遍的做法。假設(shè)你要請(qǐng)求一個(gè) 100k 的文件,網(wǎng)絡(luò)傳輸速度為 50k/s,需要 2s 才能得到數(shù)據(jù),但是如果在服務(wù)器設(shè)置了 gzip 壓縮,將服務(wù)端的文件壓縮到了 50k(實(shí)際上的壓縮率往往小于 50%),這時(shí)候只需 1s 就能得到數(shù)據(jù),然后在客戶端解壓即可。

濰城ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書未來(lái)市場(chǎng)廣闊!成為創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!

可以對(duì)比下同一個(gè)文件在開啟 gzip 前后的大小。

gzip 壓縮前

如何在 apache 中開啟 gzip 壓縮服務(wù)

gzip 壓縮后

如何在 apache 中開啟 gzip 壓縮服務(wù)

那么如何在服務(wù)端開啟 gzip 服務(wù)呢?這里以 apache 為例簡(jiǎn)單介紹下。

打開 apache 的 "httpd.conf" 文件,比如我的是在 "C:\wamp\bin\apache\Apache2.2.21\conf" 目錄下。找到以下這一行,將它前面的注釋(#)去掉:

復(fù)制代碼LoadModule deflate_module modules/mod_deflate.so

很多參考文件都提到同時(shí)要對(duì) LoadModule headers_module modules/mod_headers.so 去掉注釋,說(shuō) "如果不開啟這個(gè),那網(wǎng)站就不能正常顯示了" ,不過(guò)我在測(cè)試過(guò)程中沒(méi)有去掉也沒(méi)有問(wèn)題。

接著再添上以下代碼:

復(fù)制代碼<IfModule mod_deflate.c>
# 告訴 apache 對(duì)傳輸?shù)綖g覽器的內(nèi)容進(jìn)行壓縮
SetOutputFilter DEFLATE
# 壓縮等級(jí) 9
DeflateCompressionLevel 9
</IfModule>

這樣就能對(duì)所有文件進(jìn)行 gzip 壓縮了。壓縮等級(jí)是個(gè) 1-9 之間的整數(shù),取值范圍在 1(最低) 到 9(最高)之間,不建議設(shè)置太高,雖然有很高的壓縮率,但是占用更多的CPU資源。(本地測(cè)試了下 1 和 9 壓縮率差不了多少...)

實(shí)際開發(fā)中我們并不需要對(duì)所有文件進(jìn)行壓縮,比如我們無(wú)需對(duì)圖片文件進(jìn)行 gzip 壓縮,因?yàn)閳D片文件(一般為 jpg、png等格式)本身已經(jīng)壓縮過(guò)了,再進(jìn)行 gzip 壓縮可能會(huì)適得其反(詳見(jiàn) 圖片要啟用gzip壓縮嗎?絕對(duì)不要!,背景圖片千萬(wàn)不要gzip壓縮,尤其是PNG),類似的還有 PDF 以及音樂(lè)文件。所以我們可以設(shè)置過(guò)濾指定文件或者對(duì)指定文件進(jìn)行壓縮。

比如我們要對(duì)圖片等特殊文件不進(jìn)行 gzip 壓縮處理:

復(fù)制代碼<IfModule mod_deflate.c>
# 告訴 apache 對(duì)傳輸?shù)綖g覽器的內(nèi)容進(jìn)行壓縮
SetOutputFilter DEFLATE
# 壓縮等級(jí) 9
DeflateCompressionLevel 9
#設(shè)置不對(duì)后綴gif,jpg,jpeg,png的圖片文件進(jìn)行壓縮
SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary
</IfModule>

或者指定文件格式進(jìn)行壓縮:

復(fù)制代碼<IfModule mod_deflate.c>
# 壓縮等級(jí) 9
DeflateCompressionLevel 9
# 壓縮類型 html、xml、php、css、js
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/x-javascript application/x-httpd-php
AddOutputFilter DEFLATE js css
</IfModule>

修改好后,保存 httpd.conf 文件,記得重啟 apache,再刷新瀏覽器看請(qǐng)求,應(yīng)該已經(jīng)生效了!

網(wǎng)頁(yè)題目:如何在apache中開啟gzip壓縮服務(wù)
轉(zhuǎn)載源于:http://bm7419.com/article10/jjiodo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、網(wǎng)站內(nèi)鏈App開發(fā)、企業(yè)建站、商城網(wǎng)站、手機(jī)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作