问题标签 [gzip]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
4815 浏览

iis - 选择 gzip 而不是 deflate 进行 http 压缩是否会影响性能?

我们最近将我们的一些站点从 deflate 切换到 gzip,并注意到我们服务器上的 CPU 负载显着增加。

0 投票
3 回答
3615 浏览

javascript - 如何在 Web 服务器上设置 gzip 压缩?

我有一个嵌入式网络服务器,它总共有 2 兆的空间。通常你 gzip 文件是为了客户的利益,但这会节省我们在服务器上的空间。我读到您可以只压缩 js 文件并将其保存在服务器上。我在 IIS 上进行了测试,但我一点运气都没有。在完成这项工作的过程的每个步骤中,我究竟需要做什么?

这就是我想象的样子:

  1. gzip foo.js
  2. 将 html 中的链接更改为指向 foo.js.gz 而不仅仅是 .js
  3. 在响应中添加某种标题?

非常感谢您的帮助。

-fREW

编辑:我的网络服务器不能即时做任何事情。它不是 Apache 或 IIS;它是 ZiLog 处理器上的二进制文件。我知道你可以压缩流;我刚刚听说您也可以将文件压缩一次并保持压缩状态。

0 投票
2 回答
687 浏览

java - 使用 XSL 转换器的 GZip HttpResponse

我的 Servlet 中有以下代码,但是当 IE 访问该页面时,它返回一个空白的 html 页面。如果我直接在 StreamResult 构造函数中使用 response.getOutputStream(),页面加载正常。我错过了什么?

response是 HttpServletResponse 的一个实例,而xsl是 XSLTC TransformerFactory 的 Transformer 的一个实例

0 投票
3 回答
2936 浏览

asp.net - 如何让 ASP.NET AJAX 使用 GZip 压缩发送其 JSON 响应?

我在 IIS7 中启用了压缩,它在所有响应上都按预期工作,除了那些由 ASP.NET AJAX 构建的响应。我有一个向客户端提供数据的 Web 服务。直接调用 Web 服务时,它被正确压缩。但是,当它通过 ASP.NET AJAX 调用时,JSON 响应不会被压缩。

如何让 ASP.NET AJAX 使用 GZip 压缩发送其 JSON 响应?

0 投票
4 回答
5597 浏览

asp.net - 如何让 ASP.NET AJAX 使用 GZip 压缩发送其 JSON 响应?

我在 IIS7 中启用了压缩,它在所有响应上都按预期工作,除了那些由 ASP.NET AJAX 构建的响应。我有一个向客户端提供数据的 Web 服务。直接调用 Web 服务时,它被正确压缩。但是,当它通过 ASP.NET AJAX 调用时,JSON 响应不会被压缩。

如何让 ASP.NET AJAX 使用 GZip 压缩发送其 JSON 响应?

0 投票
5 回答
8344 浏览

ruby-on-rails - 如何使用 Rails 压缩网页输出?

对我的网页输出进行gzip 压缩的 Rails 最佳插件是什么?

编辑: 我托管的公司表示他们不会安装mod_deflate.

0 投票
7 回答
2763 浏览

python - 从 Python 设置 gzip 时间戳

我对使用 Python 的gzip模块压缩数据感兴趣。碰巧我希望压缩输出是确定性的,因为这对于一般事物来说通常是一个非常方便的属性——例如,如果某个非 gzip 感知进程正在寻找输出中的变化,或者如果输出将被加密签名。

不幸的是,每次的输出都不一样。据我所知,唯一的原因是 gzip 标头中的时间戳字段,Python 模块始终使用当前时间填充该字段。我认为实际上不允许您使用没有时间戳的 gzip 流,这太糟糕了。

无论如何,Pythongzip模块的调用者似乎没有办法提供基础数据的正确修改时间。(实际gzip程序似乎尽可能使用输入文件的时间戳。)我想这是因为基本上唯一关心时间戳的是gunzip写入文件时的命令——现在,我,因为我想要确定性的输出。这是不是要求太过分了?

有没有其他人遇到过这个问题?

gzip对来自 Python 的任意时间戳的某些数据最不可怕的方法是什么?

0 投票
2 回答
12788 浏览

merge - 是否有合并两个 GZIP 文件而不解压缩它们的 GZIP 合并?

假设有 a.gz 和 b.gz。

$ gzip_merge a.gz b.gz -输出 c.gz

我想要这个程序。当然,

$ cat a.gz b.gz > c.gz

不起作用。因为a.gz的最终DEFLATE块有BFINAL,b.gz的GZIP头。(参考 RFC1951, RFC1952) 但是如果你取消了 BFINAL,丢掉第二个 GZIP 头并且遍历第二个 gzip 文件的字节边界,你可以合并它。

其实我也想过为这件事写一个开源程序,但是不知道怎么发布。所以我请乔尔做我的项目经理,我给他讲解了我的解释和辩护,他终于明白了我想做什么,但说他太忙了。:(

当然,我可以自己写一个,然后尝试以我的方式发布它。但我不能一个人做这件事,因为我的日常工作属于我雇主的财产。

有志愿者吗?我们可以作为程序员(我)、出版商(你)或程序员(你)、出版商(我)工作。我需要的只是一些信用。我曾经实现过 RFC3320 中描述的通用解压器虚拟机。所以我知道这是可行的。

或者,您可以将我指向那个程序。这对于管理日志文件非常有用,例如将 365(天)gzip 压缩日志文件合并为一个。;)

谢谢。

0 投票
5 回答
4466 浏览

iis - IIS 的最佳 GZIP 压缩设置是什么?

您可以将 HcDynamicCompressionLevel 设置为 0-10 之间的任何位置。我听说 10 不好(CPU 使用率高),但最有效的幻数是多少?

0 投票
9 回答
178805 浏览

javascript - Gzip 的 JavaScript 实现

我正在编写一个 Web 应用程序,它需要通过 AJAX 将 JSON 数据存储在一个小的、固定大小的服务器端缓存中(想想:Opensocial quotas)。我无法控制服务器。

我需要减少存储数据的大小以保持在服务器端配额内,并希望能够在浏览器中对字符串化的 JSON 进行 gzip 压缩,然后再将其发送到服务器。

但是,我在 Gzip 的 JavaScript 实现方式中找不到太多。关于在发送之前如何在客户端压缩数据的任何建议?