2014-02-11 65 views
0

这应该是一个快速问题,但我不能谷歌的答案,因为它只是告诉我编辑我的.htaccess文件。我已启用.htaccess,我复制了HTML5锅炉板以及删除它,并在其中添加了http://www.feedthebot.com/pagespeed/enable-compression.html这一个。Gzip - 我压缩还是服务器压缩?

Gzip仍然没有启用,我有一个gulp.js插件gzips的东西,所以我的问题是,我发送用户file.js.gz?或file.js? file.js似乎没有被压缩,并且file.js.gz没有解压,这是破坏网站。

我创建了一个php信息页面,根据Apache环境启用了mod_deflate。

回答

0

如果你使用Apache服务器提供的HTTP请求,并启用和配置mod_deflate模块,为file.js请求将送达它的用gzip版版本,以响应头,告诉用户代理的输出是gzip-ed(这里,我假设你为* .js文件启用了gzip压缩)。因此,您不需要更改文件的文件扩展名。

我不确定你如何在你的设置中使用Gulp.js,因为它是一个Node.js组件,并且你在询问Apache的配置。

还指出:

一些流行的浏览器无法处理所有内容 (http://httpd.apache.org/docs/2.2/mod/mod_deflate.html

+0

我看到有一个Gulp.js塞对gzip压缩并认为我会在提供服务之前需要将我的文件进行gzip压缩。 –

+0

我有mod_deflate启用,我正在使用最新的稳定铬,但它仍然不gzipping任何东西。 –

+0

@PatrickCauley你试过我说的吗? –

0

启用mod_deflate后,服务器执行压缩。在你的htaccess中,你可以指定要压缩的文件类型。照常服务器上的js文件,不要改变扩展名,一旦你添加了参数,服务器就会完成剩下的工作。

像这样

AddOutputFilterByType DEFLATE application/javascript 
AddOutputFilterByType DEFLATE application/x-javascript 

或者这里有一个例子,将通过文件的扩展名相匹配。根据需要自定义。

<FilesMatch "\\.(js|css|html|htm|php|xml)$"> 

SetOutputFilter DEFLATE 

</FilesMatch>