我在共享服务器上有一个joomla网站,因此我无法访问apache以启用gzip或defalte所以我想知道我可以用php做什么,以启用压缩来加速我的网站?
答案 0 :(得分:1)
您可以尝试通过设置zlib.ouput_compression设置来打开输出压缩:
http://php.net/manual/en/zlib.configuration.php#ini.zlib.output-compression
或者您可以专门执行输出缓冲并通过GZIP处理程序运行它:
ob_start("ob_gzhandler");
第一个选项是首选方法,如果你使用第二个方法检查它没有破坏Joomla的任何输出缓冲 - 我不是Joomla专家但我希望CMS提供压缩内容的选项交货前。
答案 1 :(得分:0)
如果您的主机上启用了gzip,则需要将此行添加到.htaccess文件而不更改代码
AddOutputFilterByType DEFLATE text/html text/plain text/css application/json AddOutputFilterByType DEFLATE text/javascript application/javascript application/x-javascript AddOutputFilterByType DEFLATE text/xml application/xml text/x-component
这行可以在html,css json和xml内容中启用apache deflate
答案 2 :(得分:0)
如果你添加条件来检查它是否接受这样的编码,那就太好了。
<?php
if (substr_count($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip'))
ob_start("ob_gzhandler");
else
ob_start();
?>
注意: 如果您的服务器不支持.htaccess配置,则必须为每个php文件执行此操作。