5

我特别习惯了FirebugYSlow。我正在研究的一件事是 gzip 压缩。YSlow 仍然给我的网站一个“F”,并表示我的 CSS 和 JavaScript 文件没有被压缩。

但是,如果我对我的站点(例如http://www.gidnetwork.com/tools/gzip-test.php)运行外部 gzip 测试,它会告诉我 gzip 正在工作并给我节省,尽管我认为这可能只是 HTML。

这是我.htaccess文件的相关部分:

<IfModule mod_gzip.c>
    mod_gzip_on       Yes
    mod_gzip_dechunk  Yes
    mod_gzip_item_include file      \.css$
    mod_gzip_item_include file      \.(html?|txt|js|php|pl|jpg|png|gif)$
    mod_gzip_item_include handler   ^cgi-script$
    mod_gzip_item_include mime      ^text/.*
    mod_gzip_item_include mime      ^application/x-javascript.*
    mod_gzip_item_exclude mime      ^image/.*
    mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</IfModule>

为什么 YSlow 不同意外部 gzip 测试?

4

3 回答 3

2

mod_gzip是 Apache 1. xmod_deflate的过时部分,在 Apache 2中已被替换。

这个mod_deflate配置让 YSlow 在这里很开心:

<IfModule mod_deflate.c>
    AddOutputFilterByType DEFLATE application/x-javascript
    AddOutputFilterByType DEFLATE text/css text/html text/plain text/xml
    DeflateCompressionLevel 9
</IfModule>

有两AddOutputFilterByType行的唯一原因是避免水平滚动。

于 2011-05-06T12:50:39.880 回答
0

只需将下一个代码添加到您的 .htaccess

# BEGIN GZIP
<ifmodule mod_deflate.c>
AddOutputFilterByType DEFLATE text/text text/html text/plain text/xml text/css application/x-javascript application/javascript
</ifmodule>
# END GZIP

似乎它让 GTmetrix 和 Yslow 都开心

不要忘记添加

ob_start("ob_gzhandler");

如果您使用的是PHP ,则在头文件的开头

于 2012-11-10T19:40:13.720 回答
0

不在代理后面测量?我的工作代理用我的 yslow 结果搞砸了......!

于 2011-05-06T09:57:38.567 回答