2013-05-22 52 views
31

我聽說很多人應該使用gZip爲他們的網頁更快的訪問和下載,並且它也節省了帶寬。什麼是gZip壓縮?

那麼這是什麼gZip壓縮,它是如何使下載更快?它是否壓縮HTML和圖像或只是HTML。

如果我要開始在我的webapps中使用gZip什麼注意事項我需要做什麼? 是否有任何服務器或瀏覽器限制它,或它只支持特定的編碼。

+0

請充分了解這裏。 http://en.wikipedia.org/wiki/Gzip – Nitesh

回答

1

GZip在向瀏覽器提供請求時壓縮文件,如html,js和css文件。隨着文件大小的減小,它以更快的方式提供給用戶。並非所有瀏覽器都支持壓縮,但現在所有的瀏覽器都支持這種瀏覽器強烈建議,但只有一個部分是它增加了服務器的CPU使用情況,這可能在某個時候值得關注。在客戶端緩存中使用Gzip將有助於提高性能。

+0

如果您提供的文字信息非常簡短,可以將其添加到用戶提問其下方的註釋區域下方。提供全面的描述性細節以及說明性示例,可以幫助用戶以及個人瞭解這個問題。日Thnx。 - @Devesh – Nitesh

+0

@NathanLee我同意你的觀點。非常感謝 – Devesh

30

GZip是一種數據壓縮的形式 - 即它需要大量的數據並使其更小。可以通過解壓縮壓縮文件來恢復原始數據。

它與網絡應用程序和網站相關,因爲HTTP協議包含gzip正在發送的數據的能力。

這意味着當它被使用時,您爲服務該網站的帶寬成本將會降低,因爲訪問該網站的用戶將會下載較小的文件。

使用GZip有一些注意事項,但總的來說,使用gzip通常比不使用gzip更好 - 例如,壓縮和解壓縮文件需要時間和處理器力量,但通常這不是問題因爲這樣做的時間通常少於下載較小文件所節省的時間。因此,儘管瀏覽器不得不解壓縮文件,但總體效果是節省時間的。

GZip可以壓縮所有文件;它不會影響文件類型或編碼。很顯然,有些文件可以比其他文件更有效地壓縮,因此節省的帶寬將會有所不同 - HTML等文本文件會產生最佳效果;圖像不會被gzip壓縮太多,因爲它們已經有一些內置的壓縮​​。一些文件(例如那些已被嚴重壓縮的文件,例如.zip文件)在gzip時實際上可能會稍微大一些,因爲它們不能被進一步壓縮,但gzip仍然需要將其元數據添加到文件中。但這些都是邊緣情況,並沒有太大的區別。

跨HTTP的GZip通常完全透明。最終用戶應該完全不知道它正在發生;瀏覽器會在幕後爲他們做。從網絡服務器端,只需打開Web服務器軟件中的配置設置即可。從你的角度來看,這只是你需要知道的一切;只需在您的服務器上設置gzip設置(或詢問您的ISP執行此操作)。如果你不知道,它很可能已經在你的網站上處於活動狀態。

+2

是否依賴於瀏覽器? – Ric

+4

@Ric - 不,所有瀏覽器都支持它。即使瀏覽器不支持它,它們仍應該工作 - 它是HTTP 1.1規範的一部分,客戶端指定了它支持的壓縮類型,服務器將作出相應的響應(例如,如果瀏覽器說「我可以服務器不會發送gzip文件,我記得在IE6的早期版本中存在一個會破壞gzip的錯誤,但是web服務器爲此實現瞭解決方法,並且IE6本身在WinXP中得到修復SP2,所以真的不會有很多人仍在使用破損版本 – Spudley

+2

是的,但a)所有常見的瀏覽器和服務器都支持它,並且b)每次事務都在瀏覽器和服務器之間協商壓縮,所以任何自動處理不常見客戶端的支持。 –