簡體   English   中英

關於gzip的困惑,是否已壓縮?

[英]Confusion about gzip, is it compressed or not?

很抱歉打擾您一個似乎證據充分的問題,但是我嘗試過的所有事情都沒有完全令人滿意。

上周,我的公司從托管程序包切換到管理服務器,但我仍在對其進行優化。

現在,Google的PageSpeed Insights告訴我, 它沒有GTMetrix一樣被壓縮 GidNetwork告訴我壓縮工作正常。

我已經加了

<IfModule mod_deflate.c>
<FilesMatch "\.(html|php|txt|xml|js|css)$">
SetOutputFilter DEFLATE
</FilesMatch>
</IfModule>

到我的.htaccess(按此處的建議)正常運行,我更改的其他設置也可以,

zlib.output_compression = On

到我的php.ini。 整個.htaccess和php.ini可以在jsFiddle上看到。

在Firefox和Chrome中發送和接收的標頭聲稱正在壓縮。

我還在我的主目錄中創建了一個httpd.conf ,因為服務器上還不存在該httpd.conf 我應該將文件移到其他地方嗎?

我真正想知道的是:

太...我在做什么錯? 壓縮了嗎? 不是嗎 我怎樣才能使谷歌“看到”壓縮?

非常感謝您的幫助。

這應該是您需要的功能,它應該自動生成您需要的標頭:

http://www.php.net/manual/en/function.gzdecode.php

無論如何,請檢查您的php版本,因為它僅適用於php 5.4.0或更高版本。

盡管我的瀏覽器接受deflate / gzip編碼( Accept-Encoding: gzip, deflate ),但是您的服務器無法使用壓縮數據進行應答:

HTTP/1.1 200 OK
Date: Tue, 11 Mar 2014 09:41:45 GMT
Server: Apache
Connection: Keep-Alive
Keep-Alive: timeout=2, max=200
Etag: "96-100e9-4f4517d791912"
Expires: Fri, 11 Apr 2014 13:28:25 GMT
Cache-Control: max-age=2692000, public
Vary: User-Agent

如果被壓縮,服務器還將發送

Content-Encoding:   deflate

使用FireBug或開發控制台查看標頭。 它必須是您的httpd.conf。 您不能簡單地在主目錄中創建此文件,Apache會加載它。

/etc/apache*/etc/httpd/*查看配置文件。

您已經啟用了gzip壓縮功能,但尚未將其設置為壓縮某些文件類型,例如javascript和css。 這就是為什么Google的PageSpeed試圖建議啟用壓縮的原因。 要使這兩種類型的壓縮有效,請使用

AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/javascript

到底是什么工作對我來說來壓縮留給未壓縮的原因,我不完全得到尚未被描述的JS / CSS文件在這里

在這種方法中,javascript和css文件被php腳本強制壓縮。 它還設置了新的“ Expire”標題,因此,如果要緩存5分鍾以上,請更改數字。 添加不同的文件比較麻煩,但我認為可能。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM