Eri*_*ers 6 php mod-deflate apache-2.2
我已经启动并运行了 mod_deflate。我可以在我的 apache 服务器中放入一个 something.txt 文件并使用 curl 来检查它。
curl --compressed -I /somefile.txt 给了我以下很好的压缩信息:
Vary: Accept-Encoding
Content-Encoding: gzip
Run Code Online (Sandbox Code Playgroud)
但是如果我使用 /some.php 我会回来:
Accept-Ranges: bytes
X-Powered-By: PHP/5.4.4-14+deb7u5
Run Code Online (Sandbox Code Playgroud)
但没有内容编码:gzip,我使用的 .htaccess 有多个选项:
SetOutPutFilter DEFLATE
Run Code Online (Sandbox Code Playgroud)
或者
AddOutputFilterByType DEFLATE application/json
Run Code Online (Sandbox Code Playgroud)
我还检查了 php.ini 中的 zlib 压缩是否关闭,并尝试将输出缓冲区设置为关闭。但无论我尝试什么,我都无法让 php 输出被 apache 压缩。从 apache 到 zip 的开销比我使用 php zlib 时少。
我看到了足够多的帖子,比如Apache 输出压缩适用于 CSS/JS 而不是 PHP,但可以从 php 压缩。我想要 apache 来处理它。
我一定在这里遗漏了一些愚蠢的东西。
更新:我解决了所有问题,也是因为给出的答案。最后它仍然没有100%起作用。这是由于安装了错误的软件包。使用了 apache2filter,这让我走错了路。
AddOutputFilterByType
是一种已弃用的在输出过滤器链上添加内容的方法(请参阅此处)。:
另一项指令 AddOutputFilterByType 仍受支持,但可能存在问题,现已弃用。请改用动态配置。
您可能会遇到一些问题,因为 PHP 与一个不包含 DEFLATE 过滤器的过滤器链关联。
您可以尝试将mod_filter的新语法与FilterChain一起使用,如本问题所示(在问题中,而不是在答案中)。
归档时间: |
|
查看次数: |
11981 次 |
最近记录: |