我已经习惯了 Firebug YSlow 。我要看的一件事是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测试不同意?

最佳答案

mod_gzip是Apache 1.x的过时部分,已在Apache 2中被mod_deflate取代。

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行的唯一原因是避免水平滚动。

10-08 00:05