我正在编写一个小分析页面,它将帮助我查找应用程序中的错误。从本质上讲,它允许在视觉上比较实际数据和日志条目,并对数据进行一些分析。
由于这仅用于调试,因为我将在实际站点上部署它,我希望它尽可能少地加载服务器。一些分析选项将包括相当繁重的子字符串搜索或n 2 操作,因此我将把它卸载到客户端。
这意味着PHP页面将只从表和日志中获取数据,其中一些是JSON,并将其写出来。然后客户端Javascript将进行所有分析等。
问题是JSON的数据将是几MB大,而我与服务器的连接速度很慢。以某种方式压缩数据会很好。有人有想法吗?
环境是PHP + Apache;我不知道是否会安装mod_gzip;我无法控制它。
答案 0 :(得分:46)
您可以使用PHP’s output control压缩数据。只需在任何输出之前将此调用放在脚本的开头:
ob_start('ob_gzhandler');
如果客户接受,任何输出都将使用 gzip 或 deflate 进行压缩。
答案 1 :(得分:3)
在PHP 5.4中现在是JSON_UNESCAPED_UNICODE所以你可以替换char:
\ u00f3 - > Ĺ> =Ś
当量:
json_encode($data,JSON_UNESCAPED_UNICODE);
答案 2 :(得分:0)
如果apache是您的选择(就像在原始问题中提到的那样),您可以在.htaccess中添加一些规则:
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html
# Add any mime-type you think is appropriate here
AddOutputFilterByType DEFLATE application/json
</IfModule>