2013-09-05 20 views
4

当我检查这个网站:http://www.tropicbreeze.co.uk/,例如http://checkgzipcompression.com/ - 它报告说它使用Gzip。但是Yslow不同意。为什么Gzip会压缩我的css&javascript而不是我的HTML/php?

我有这个在我的.htaccess文件:

AddOutputFilterByType DEFLATE text/html text/php text/x-php application/php application/x-php application/x-httpd-php-source text/plain text/xml text/css text/javascript application/x-javascript application/xhtml+xml application/javascript application/x-httpd-php 

在Firebug的页眉Net标签检查,我可以看到,各种相关的.css和.js该网页上的文件具有内容编码gzip按预期显示 - 但php文件没有。

Yslow告诉我,该主页不使用Gzip。 Firebug Net选项卡表示服务器上的主页(以及服务器上的其他php文件)未通过内容编码发送gzip

我尝试添加所有我能找到的mimetype筛选器,并且就我而言可以看到,DEFLATE text/html应该覆盖它,但仍然没有喜悦。

我已清除我的缓存并且未使用代理服务器。

任何人都可以提出我错过了什么吗?为什么php文件在其他文件不被gzip压缩?或者,如果他们正在被压缩,为什么Firebug/yslow认为他们不是?

回答

0

不知道到底是什么的问题可能是,但也许一个简单的办法是将尝试像...

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

...这应设置压缩上流行的文件扩展名包括PHP。

我个人认为这种格式对于人类来说也更容易阅读。奖金!

+1

不幸的是,我尝试过这种格式,它也有同样的问题 - 所有的东西(CSS,JavaScript等)都是从页面本身的HTML中分离出来的,而不是gzip。 我认为你使用的格式和它的工作原理?它看起来像问题不是我的语法,在这种情况下,但有关服务器配置... – Victoria

+0

是的,该格式适用于我的网站。 是[www.tropicbreeze.co.uk](http://www.tropicbreeze.co.uk/)您遇到麻烦的网站?如果不是,你可以发布一个链接到真实的网站?我想从我的浏览器中看到客户端标题,看看它们当前如何设置。 –

+1

真的很抱歉,我错过了 - 是的,那是(服务器上)显示此行为的真实站点之一。除了php/html文件之外,所有东西都在Yslow中进行gzip报告,而不是。我仍然对此感到迷惑,因此感激地收到了任何提示。 – Victoria