2013-06-20 52 views

回答

0

gzip壓縮應該由服務器完成,因爲服務器知道客戶端是否能夠解壓縮數據。如果配置正確,Web服務器將爲您處理透明。

在lighttpd的,你可以啓用壓縮這樣的:

server.modules += ("mod_compress") 

compress.cache-dir = "/var/cache/lighttpd/compress/" # change this as you want 
compress.filetype = ( 
    "application/x-javascript", 
    "application/javascript", 
    "text/javascript", 
    "text/css", 
    "text/html", 
    "text/plain" 
) 

進一步信息,請參閱ModCompress in the lighttpd manual

+0

所以阿賈克斯Minfy工具不這樣做,但我可以用你上面的腳本明確地做,如果我want..Do你知道IIS 7 – user505210

+0

腳本@ user505210它不處理它。您可以將上面的行添加到lighttpd.conf中以啓用壓縮(如果您明顯使用lighttpd)。確保正確清理緩存文件夾,這不會自動完成。 – TimWolla

0

用gzip ING是在服務器端完成,這可以通過多種方式來完成:

  1. 自動使用你的服務器軟件(請參閱您的Web服務器軟件的文檔)。
  2. 使用服務器端腳本,例如下面的PHP之一:

    <?php  
        header("Content-Encoding: gzip"); 
        echo gzencode($file_contents, 9); 
    ?> 
    

這個PHP示例首先設置gzip的內容編碼報頭,這指示瀏覽器解壓縮的響應,然後輸出該編碼的文件內容(使用設置爲9的高壓縮級別)。欲瞭解更多信息,請參閱PHP documentation on gzip

+0

gzip壓縮與'level = 9'沒有緩存是非常糟糕的。 – TimWolla

+0

@TWWolla你可以在PHP中添加緩存標題或更改gzip級別。例如「標題(」Cache-Control:max-age = 2592000「);」持續30天。 –