2

我有一个网站,其中 Yslow 说您需要使用 gzip 压缩组件。

因此,当我将 phpinfo() 回显为我的 test.php 文件时,我在我的 apache 响应中找到了以下信息。


SERVER_SOFTWARE Apache/2.2.17 (Win32) PHP/5.3.5 HTTP_ACCEPT_ENCODING gzip, deflate Accept-Encoding gzip, deflate gzip 压缩启用

_SERVER["HTTP_ACCEPT_ENCODING"] gzip,放气

然后我按照本教程将以下代码复制并粘贴到我的 .htaccess 文件中。


<IfModule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_keep_workfiles No
mod_gzip_can_negotiate Yes
mod_gzip_add_header_count Yes
mod_gzip_send_vary Yes
mod_gzip_command_version '/mod_gzip_status'
mod_gzip_min_http 1000
mod_gzip_minimum_file_size 300
mod_gzip_maximum_file_size 512000
mod_gzip_maximum_inmem_size 60000
mod_gzip_handle_methods GET POST
mod_gzip_temp_dir /tmp
mod_gzip_item_include file \.html$
mod_gzip_item_include file \.php$
mod_gzip_item_include file \.pl$
mod_gzip_item_include file \.rb$
mod_gzip_item_include file \.py$
mod_gzip_item_include file \.cgi$
mod_gzip_item_include file \.css$
mod_gzip_item_include file \.js$
mod_gzip_item_include mime ^application/javascript$
mod_gzip_item_include mime ^application/x-javascript$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^httpd/unix-directory$
mod_gzip_item_include handler ^cgi-script$
mod_gzip_item_include handler ^server-status$
mod_gzip_item_include handler ^server-info$
mod_gzip_item_include handler ^application/x-httpd-php
mod_gzip_item_exclude mime ^image/.*
</IfModule>

但这没有任何区别,因为我仍然按照 YSlow 的建议出现文件压缩错误。

我还通过参考其他一些页面教程尝试了其他一些脚本,但没有成功。

请任何人都可以给我解决方案如何解决这个问题?

4

2 回答 2

8

试试这个:

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

此外,清除浏览器的缓存并重新启动浏览器以确保它不会缓存非 gzip 的响应。

于 2012-11-05T01:01:21.663 回答
-1

有些服务器可能没有安装 apache 模块(gzip、deflate)。解决此问题的一种方法是将以下内容添加到您的 .htaccess 中:

php_flag zlib.output_compression On
php_value zlib.output_compression_level 5
于 2016-02-11T11:36:28.407 回答