我找到了一些关于如何启用 gzip 的教程,但似乎对我没有任何帮助,所以我的问题是如何启用 gzip。我在一个共享的 Dreamhost 托管服务器上,它正在运行 PHP 5.2 版和 Apache,从 php 信息中我找到了这一行,也许这会有帮助?
zlib
ZLib Support enabled
Stream Wrapper support compress.zlib://
Stream Filter support zlib.inflate, zlib.deflate
Compiled Version 1.2.3.3
Linked Version 1.2.3.3
Directive Local Value Master Value
zlib.output_compression Off Off
zlib.output_compression_level -1 -1
zlib.output_handler no value no value
我也找到了这条线
_SERVER["HTTP_ACCEPT_ENCODING"] gzip, deflate
不知道跟这个有没有关系。但这是我的第一个问题,其次,我有保管箱,托管一个 javscript 文件,我想知道是否可以对该文件进行 gzip 压缩,它没有被压缩传输,那么有什么办法可以这样做吗?
最佳答案
您是否尝试过 ob_gzhandler ?
<?php ob_start("ob_gzhandler"); ?>
<html>
<body>
<p>This should be a compressed page.</p>
</html>
<body>
作为替代方案,您可以使用 Apache Web 服务器添加 a DEFLATE output filter到您的顶级服务器配置,或到 .htaccess
文件:
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/text text/html text/plain text/xml \
text/css application/x-javascript application/javascript
</IfModule>
提示:有时检测 Web 服务器是否正在发送压缩内容非常棘手。 This online tool可以帮忙。
在我的网络浏览器中使用开发人员工具,我测试了一个压缩和不压缩的 PHP 文件以比较大小。就我而言,差异是 1 MB(未压缩)和 56 KB 压缩。
关于php - 如何启用 gzip?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4709076/