導航:首頁 > 文件處理 > gzip壓縮速度

gzip壓縮速度

發布時間:2022-08-11 09:13:36

Ⅰ Apache如何配置gzip壓縮傳輸提高訪問速度

Apache2 推薦使用 mod_deflate 壓縮,mod_gzip適合apache1.x
1. 安裝mod_deflate
到apache的源文件目錄
cd /root/httpd-2.0.63/moles/filters
編譯並安裝/usr/local/apache/bin/apxs -i -c -a mod_deflate.c
apxs命令參數說明:
-i 此選項表示需要執行安裝操作,以安裝一個或多個動態共享對象到伺服器的moles目錄中。
-a 此選項自動增加一個LoadMole行到httpd.conf文件中,以激活此模塊,或者,如果此行已經存在,則啟用之。
-A 與 -a 選項類似,但是它增加的LoadMole命令有一個井號前綴(#),即此模塊已經准備就緒但尚未啟用。
-c
此選項表示需要執行編譯操作。它首先會編譯C源程序(.c)files為對應的目標代碼文件(.o),然後連接這些目標代碼和files中其餘的目標代碼
文件(.o和.a),以生成動態共享對象dsofile 。如果沒有指定 -o
選項,則此輸出文件名由files中的第一個文件名推測得到,也就是默認為mod_name.so 。

如果是新安裝apache,直接加上 --enable-headers --enable-deflate 即可
2. 配置mod_deflate
vi/usr/local/apache224/conf/httpd.conf
LoadMole deflate_mole moles/mod_deflate.so
這個是我的網站 https://chaodiquan.com LoadMole配置 記住這個要需要放在libphp5.so之後
在httpd.conf配置文件中加入:
AddOutputFilterByTypeDEFLATE text/html text/htm text/plain text/xml application/x-httpd-php
AddOutputFilterDEFLATE css js 或
<IfMolemod_deflate.c>
DeflateCompressionLevel 7
AddOutputFilterByType DEFLATE text/html text/plain text/xmlapplication/x-httpd-php
AddOutputFilter DEFLATE css js swf
</IfMole> 以下允許壓縮更多內容的配置更加復雜:
Compress everything except images
<Location />
# 插入過濾器
SetOutputFilter DEFLATE

# Netscape 4.x 有一些問題...
BrowserMatch ^Mozilla/4 gzip-only-text/html

# Netscape 4.06-4.08 有更多的問題
BrowserMatch ^Mozilla/4\.0[678] no-gzip

# MSIE 會偽裝成 Netscape ,但是事實上它沒有問題
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
# 不壓縮圖片
SetEnvIfNoCase Request_URI \
\.(?:gif|jpe?g|png)$ no-gzip dont-vary

# 確保代理不會發送錯誤的內容
Header append Vary User-Agent env=!dont-vary
</Location>
壓縮等級的調整有兩種說法,默認等級是6,890k的文件壓縮出來的數據和最高的9級只差1k,而且9級需要更多的CPU時間,用默認的6級就可以了。另外,有個Real-Time Compression Check工具,可以檢測某個URL是否是壓縮傳輸的。大多數情況下html代碼都能壓縮到1/4~1/3。
這個是實際伺服器配置這個是win環境下面的不知道你的是不是這個希望可以幫助到你的哈

Ⅱ 如何利用gzip壓縮網頁來提升網站瀏覽速度

純Tomcat 伺服器
如果您的 WEB 應用程序是跑在 Tomcat
伺服器下的,而且直接使用 Tomcat 所提供的 HTTP 服務,那建議你馬上動手,因為實在是太簡單了,你只需要在 server.xml
配置文件中給 HTTP Connector 增加一個 compression 的參數值為 on 並重啟 Tomcat
伺服器就立刻生效,配置如下:
<Connector port="8080" protocol="HTTP/1.1"
maxThreads="150" connectionTimeout="20000"
redirectPort="8443" compression="on"/>
Tomcat
採用的是 HTTP/1.1 的 GZIP 壓縮協議,它會根據瀏覽器送過來的請求中的 accept-encoding 值是否包含 gzip
來判斷瀏覽器是否支持 gzip 壓縮協議,如果瀏覽器支持就啟用 gzip 壓縮,否則就不進行任何壓縮處理。Tomcat 中還有另外一個參數
compressableMimeType,這個參數可以用來指定壓縮哪種類型的內容,例如可以指定該配置值為:text/html,text
/plain ,則只壓縮 contentType 為 text/html 和 text/plain 的頁面,不過您最好也將 css 和
javascript 文件也算在壓縮的文件類型中,因為這兩者的壓縮效果也十分的明顯。
Apache 伺服器

apache 1.3 版本,大家常用 mod_gzip 對輸出內容進行壓縮,現在主流的瀏覽器都支持 gzip 解壓縮。在 apache2
下,這個模塊換名為 mod_deflate,對應的模塊文件名是 mod_deflate.so。mod_gzip 本文不做介紹,下面描述一下在
Apache 2 下如何啟用並配置 mod_deflate 模塊。默認安裝的 Apache 不管是 Windows 還是
linux/Unix,都是不啟用該模塊的, Linux/Unix 下甚至不帶該模塊,你需要手工編譯這個模塊。
下面我們分別介紹在 Windows 和 Linux 操作系統下如何啟用並配置 mod_deflate 模塊。
在 Windows 下採用安裝程序安裝的 Apache 伺服器已經帶有 deflate 所需要的模塊 mod_deflate.so 和 mod_headers.so,我們只需要在 httpd.conf 配置文件中啟用並進行相關的配置即可,配置如下:
LoadMole deflate_mole moles/mod_deflate.so
LoadMole headers_mole moles/mod_headers.so
<Location />
# Insert filter
SetOutputFilter DEFLATE
# Netscape 4.x has some problems...
BrowserMatch ^Mozilla/4 gzip-only-text/html
# Netscape 4.06-4.08 have some more problems
BrowserMatch ^Mozilla/4\.0[678] no-gzip
# MSIE masquerades as Netscape, but it is fine
# BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
# NOTE: Due to a bug in mod_setenvif up to Apache 2.0.48
# the above regex won't work. You can use the following
# workaround to get the desired effect:
BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
# Don't compress images
SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary
# Make sure proxies don't deliver the wrong content
Header append Vary User-Agent env=!dont-vary
</Location>

如果是 Linux/Unix 操作系統,如果你沒有在編譯安裝的過程中將所需要的兩個模塊 mod_deflate 和 mod_headers
編譯進去的話,那就稍微有點麻煩,首先我們先看如何在編譯安裝 Apache 過程中也同時編譯這兩個模塊,請在執行 configure
程序時增加兩個參數分別是:
# ./configure --enable-deflate --enable-headers
這樣在編譯完 Apache 後就可以直接在 httpd.conf 中啟用並配置 deflate 模塊了,配置的方法跟 Windows 平台下是相同的。

果說您的 Apache 已經在運行了,不想再重新編譯一次,那也可以選擇只編譯 deflate 模塊所需的文件 mod_deflate.c
和mod_headers.c。這兩個文件位於 {apache-src}/moles/filters/ 目錄下(其中 {apache-src}
為 apache 源文件所在的目錄)。使用如下命令來單獨編譯這兩個源文件。
# {apache-bin}/apxs -i -a -c {apache-src}/moles/filters/mod_deflate.c
# {apache-bin}/apxs –i –a –c {apache-src}/moles/filters/mod_headers.c
其中 {apache-bin} 為 Apache 安裝目錄下的 bin 目錄,接下來在 httpd.conf 直接配置該模塊即可。
很多時候你在單獨編譯 deflate 模塊的時候可能會碰到編譯錯誤,提示是:
Cannot load /opt/apache/moles/mod_deflate.so into server: /opt/apache/moles/mod_deflate.so: undefined symbol: deflate
解決的方法如下:
編輯 /usr/local/apache2/bin/apr-config 文件修改其中的 LDFLAGS 值為 "-lz",然後再重新編譯 mod_deflate 模塊,apxs -ica mod_deflate.c 即可。
為了省卻不必要的麻煩,請盡量在編譯安裝時直接加上 --enable-deflate --enable-headers 參數。
IIS 伺服器

軟的 IIS 伺服器同樣也是目前用得最多的 WEB 伺服器之一,而且用來運行 ASP 頁面也是必不可少的。IIS6,iis本身支持 gzip
壓縮,IIS5就比較費勁了,你可以找一些第三方的組件來處理,例如 httpzip,接下來我們介紹如何在 IIS6 中啟用壓縮功能。
打開 Internet 信息服務(IIS)管理器,右擊"網站"->"屬性",選擇"服務"。在 "HTTP壓縮" 框中選中 "壓縮應用程序文件" 和 "壓縮靜態文件",按需要設置 "臨時目錄" 和 "臨時目錄的最大限制",
設置網站屬性


下來配置 gzip 組件,在 Internet 信息服務(IIS)管理器,點擊 "Web 服務擴展"->"增加一個新的 Web
服務擴展...",在 "新建 Web 服務擴展" 框中輸入擴展名 "HTTP Compression",添加 "要求的文件" 為
C:\WINDOWS\system32\inetsrv\gzip.dll,選中 "設置擴展狀態為允許",如下圖所示:
設置 Web 服務擴展,新建 Web 服務擴展

還沒完呢,我們還需要修改一個配置文件,修改之前請先停止 IIS 服務,打開 C:\Windows\System32\inetsrv\MetaBase.xml,這個文件很大,找到下面一段信息:
<IIsCompressionScheme Location ="/LM/W3SVC/Filters/Compression/gzip"
HcCompressionDll="%windir%\system32\inetsrv\gzip.dll"
HcCreateFlags="1"
HcDoDynamicCompression="TRUE"
HcDoOnDemandCompression="TRUE"
HcDoStaticCompression="TRUE"
HcDynamicCompressionLevel="0"
HcFileExtensions="htm
html
txt"
HcOnDemandCompLevel="10"
HcPriority="1"
HcScriptFileExtensions="asp
dll
exe"
>
</IIsCompressionScheme>
增加一些要進行壓縮的文件後綴,其中 HcFileExtensions 是靜態文件的擴展名,增加 js 和 css 等;HcScriptFileExtensions 為動態文件的擴展名,增加 aspx,保存後啟動 IIS 即可生效。

後我們介紹如何來測試前面所做的工作是否起效,你可能會覺得很奇怪,配置好了,用瀏覽器打開頁面正常,查看頁面源碼,內容並沒有變化,大小也跟原來一樣,
怎麼回事呢?這是因為瀏覽器已經把內容解壓了的結果,有兩個方法來判斷壓縮是否生效:第一,查看 WEB 伺服器的日誌,不管是 Apache 或者是
IIS,二者的訪問日誌格式都差不多是下面這種格式:
127.0.0.1 - - [14/May/2006:08:44:28 +0800] "GET /manual/style/css/manual.css HTTP/1.1" 200 19351

後兩個數字分別是 HTTP 的結果碼(200 表示 OK),19351
表示的是響應內容的大小,把這個大小跟你在瀏覽器上查看源碼的大小比較一下就可以知道是否生效。另外一種方法就是自己寫一個 HTTP
客戶端的小程序並設置 Accept-Encoding 的值為 gzip,deflate,由這個程序去請求伺服器端的某個 URL
地址,然後列印出響應的內容,如果是一堆亂碼,恭喜你,配置成功。下面是一段 Java 寫的測試客戶端代碼(需要用到
commons-httpclient 包):
HttpClient http = new HttpClient();
String url = http://www.softbar.com;
GetMethod get = new GetMethod(url);
try{
System.out.println("fetching url : "+ url);
get.addRequestHeader("accept-encoding", "gzip,deflate");
int er = http.executeMethod(get);
if(er==200){
System.out.println(get.getResponseContentLength());
String html = get.getResponseBodyAsString();
System.out.println(html);
System.out.println(html.getBytes().length);
}
}finally{
get.releaseConnection();
}
結論

上是目前比較流行的兩個 WEB 伺服器軟體以及 Tomcat 伺服器對於頁面壓縮的配置方法;其他的一些 J2EE
應用伺服器如果不支持這個功能的話可以考慮利用過濾器(Servlet Filter)來進行處理,具體的代碼以及配置方法可以參考 Resin
伺服器所提供的文檔。但是有一點需要提醒各位讀者的是,本文介紹的訪問只是在伺服器本身的響應速度已經足夠優化的情況下進行,也就是說在帶寬成為系統瓶頸
的時候才來考慮該方案。

Ⅲ Linux中壓縮與解壓縮:

(1)使用tar命令備份數據的格式如下:

$ tar cvf backup.tar /home/html

上述命令是將/home/html 目錄下的所有文件打包成tar文件backup.tar。

cvf是tar的命令參數。

c代表創建一個檔案文件,

v代表顯示每個備份的文件名字,

f表示tar創建的檔案文件名是後面的backup.tar,

/home/html 代表tar要備份的文件或和目錄名。

(2)使用tar命令恢復數據的格式如下:

$ tar xvf backup.tar

上述命令將備份文件backup.tar恢復到當前目錄下。

通常情況下,tar對文件進行備份的時候並不對文件進行壓縮,因此備份文件的尺寸非常大。使用如下的命令,將使tar在備份結束以後,自動使用gzip命令對備份文件進行壓縮,得到一個相應的gz文件。

$ tar zcvf backup.tar.gz /home/html

這樣,我們可以得到壓縮文件backup.tar.gz。
zip命令....

Ⅳ 什麼是GZIP壓縮 網頁GZIP壓縮是什麼意思

這一般是指WWW伺服器中安裝的一個功能,當有人來訪問這個伺服器中的網站時,伺服器中的這個功能就將網頁內容壓縮後傳輸到來訪的電腦瀏覽器中顯示出來.一般對純文本內容可壓縮到原大小的40%.這樣傳輸就快了,效果就是你點擊網址後會很快的顯示出來.當然這也會增加伺服器的負載.
一般伺服器中都安裝有這個功能模塊的.

Ⅳ 如何啟用IIS的GZIP壓縮功能來給你的網站提速

對於純文本來講,壓縮率是相當可觀的。如果每個用戶節約50%的帶寬,那麼你租用來的那點帶寬就可以服務多一倍的客戶了。
IIS6已經內建了Gzip壓縮的支持,可惜,沒有設置更好的管理界面。所以要打開這個選項,還要費些功夫。
首先,如果你需要壓縮靜態文件(HTML),需要在硬碟上建一個目錄,並給它「IUSR_機器名」這個用戶的寫許可權。如果壓縮動態文件(PHP,asp,aspx)就不需要了,因為它的頁面是每次都動態生成的,壓縮完就放棄。然後在IIS管理器中,「網站」上面右鍵-屬性,不是下面的某個站點,而是整個網站。進入「服務」標簽,選上啟用動態內容壓縮,靜態內容壓縮。
然後選中網站下面那個伺服器擴展,新建一個伺服器擴展。名字無所謂,下面的添加文件的路徑是:
c:\windows\system32\inetsrv\gzip.dll,然後啟用這個擴展。
這時候靜態內容是可以壓縮的,但是對於動態內容,aspx文件卻不在壓縮范圍內。因為默認的可壓縮文件並沒有這個擴展名。而管理界面中你又找不到可以增加擴展名的地方,這時候只能去修改它的配置文件了。
在c:\windows\system32\inetsrv\下面有個MetaBase.xml文件,可以用記事本打開,找到IIsCompressionScheme,有三個相同名字的段,分別是deflate,gzip,Parameters,第三段不用管它,前兩段有基本相同的參數,在這兩段的參數HcScriptFileExtensions下面都加上一行aspx,如果你有其它的動態程序要壓縮,也加在這里。HcDynamicCompressionLevel改成9,(0-10,9是性價比最高的一個)。
然後需要重啟一下IIS服務,就可以體會到壓縮後的速度了。不過通常可能不會有太明顯的感覺,可以用
這個頁面來檢查你的網頁是否壓縮過了,以及壓縮比和加快的速度。整個過程對CPU的佔用基本上感覺不出來。

Ⅵ 如何在vps或伺服器上設置啟用Gzip壓縮提高瀏覽速度

第一步:打開IIS,啟用HTTP壓縮服務

然後在保存MeteBase.xml,保存好後再啟動IIS。這樣Gzip壓縮就啟用成功了。

最後,測試Gzip壓縮是否成功

Ⅶ 網站建設中的gzip壓縮是什麼意思

GZIP格式已經成為使用非常普遍的一種數據壓縮格式,或者說一種文件格式。HTTP協議上的GZIP編碼是一種用來改進WEB應用程序性能的技術。大流量的WEB站點常常使用GZIP壓縮技術來讓用戶感受更快的速度。減少文件大小有兩個明顯的好處,一是可以減少存儲空間,二是通過網路傳輸文件時,可以減少傳輸的時間。gzip 是在 Linux 系統中經常使用的一個對文件進行壓縮和解壓縮的命令,既方便又好用。

另外,你建的如果不是大型站點。只是一個企業站或一個小社區小門戶不需要用這個技術。只需要把代碼優化做好一點選個速度快一點的伺服器就行了。我做網站滴

Ⅷ 網頁Gzip 壓縮是什麼 網站GZIP壓縮是什麼意思求解答

gzip格式已經成為使用非常普遍的一種數據壓縮格式,或者說一種文件格式。http協議上的gzip編碼是一種用來改進web應用程序性能的技術。大流量的web站點常常使用gzip壓縮技術來讓用戶感受更快的速度。減少文件大小有兩個明顯的好處,一是可以減少存儲空間,二是通過網路傳輸文件時,可以減少傳輸的時間。gzip
是在
linux
系統中經常使用的一個對文件進行壓縮和解壓縮的命令,既方便又好用。
另外,你建的如果不是大型站點。只是一個企業站或一個小社區小門戶不需要用這個技術。只需要把代碼優化做好一點選個速度快一點的伺服器就行了。我做網站滴

Ⅸ GZIP 與zip區別

一、主體不同

1、GZIP:最早由Jean-loup Gailly和Mark Adler創建,用於UNⅨ系統的文件壓縮。

2、ZIP:ZIP文件格式是一種數據壓縮和文檔儲存的文件格式。

二、特點不同

1、GZIP:基礎是DEFLATE,DEFLATE是LZ77與哈夫曼編碼的一個組合體。DEFLATE最初是作為LZW以及其它受專利保護的數據壓縮演算法的替代版本而設計的。

2、ZIP:是一種相當簡單的分別壓縮每個文件的存檔格式。分別壓縮文件允許不必讀取另外的數據而檢索獨立的文件。


三、優點不同

1、GZIP:可以減少存儲空間,通過網路傳輸文件時,可以減少傳輸的時間。

2、ZIP:支持基於對稱加密系統的一個簡單的密碼,已知有嚴重的缺陷,已知明文攻擊,字典攻擊和暴力攻擊。

閱讀全文

與gzip壓縮速度相關的資料

熱點內容
粉筆app在哪裡看正確率 瀏覽:886
安卓手機電腦投屏怎麼投 瀏覽:525
單片機圖標放大演算法 瀏覽:547
命令方塊隱藏圖標 瀏覽:504
阿牛智投app在哪裡下載 瀏覽:678
上海繪圖app哪裡買 瀏覽:177
華為手機加密復制卡 瀏覽:62
戴爾伺服器如何用idrac做ping測試 瀏覽:854
伺服器中心怎麼做 瀏覽:333
晶元pic16f883加密 瀏覽:734
基岩版我的世界免編程做mod 瀏覽:659
flash如何導出指定文件夾 瀏覽:908
快手安卓手機如何登錄 瀏覽:448
中國移動行銷app哪裡可以下載 瀏覽:475
小愛老師如何傳第三方app 瀏覽:918
小數除法速演算法口訣 瀏覽:545
pythoncode模塊 瀏覽:840
蘋果手機哪裡查app內存 瀏覽:996
伺服器在中國有什麼用 瀏覽:639
程序員密歇根州工作 瀏覽:730