问题标签 [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 投票
3 回答
11017 浏览

gzip - 在 Python 3 中解压缩 gzip 的服务器响应的最佳方法是什么?

我原以为这会起作用:

但事实并非如此。Dive Into Python在此示例中使用 StringIO,但这似乎在 Python 3 中缺失。正确的做法是什么?

0 投票
2 回答
1049 浏览

php - 奇怪的 http gzip 问题

这里有一个奇怪的:

我已经使用 mod_php 向 apache 2 发送了 nginx 反向代理请求。

一位用户(使用 firefox 3.1b3)报告说,最近他开始偶尔出现“firefox 应该如何处理这个文件?” 正常导航期间的弹出窗口。我们还没有关于这个问题的任何其他报告,也无法自己重现它。

我检查了 Nginx 和 apache 的日志。错误日志中没有任何内容,它们都显示请求的正常 HTTP 200。

我让他把下载的文件发给我,它生成了 HTML,它应该是——除了它有一些尾随和前导字节。

开头的字节序列是神奇的 gzip 头:1F8B08

以下是开头字符,为方便起见,使用 C 转义:

文件以:

当我通过 wget 获取相同的 URL 时,它按预期开始;神秘的开始和结束字节无处可寻。

有没有人见过类似的东西?这可能是 FF 3.1b3 的错误吗?

0 投票
1 回答
4055 浏览

python - 如果请求的数据有时被压缩,有时不被压缩,如何使用 pycurl?

我这样做是为了获取一些数据:

我的网址通常是这样的:

通常我会返回 302 指向:

鉴于我设置了 FOLLOWLOCATION 和 ENCODING gzip,一切正常。

问题是,有时我的 URL 不会导致重定向到 gzip 压缩的资源。发生这种情况时,c.perform()会引发此错误:

这向我表明 pycurl 正在尝试对未压缩的资源进行压缩。

有什么方法可以指示 pycurl 找出响应编码,以及 gunzip 或不合适吗?我玩过使用不同的值ENCODING,但到目前为止还没有豆子。

pycurl 文档似乎有点缺乏。:/

谢谢!

0 投票
5 回答
499 浏览

http - 低流量站点上的 HTTP 压缩(GZip 或 deflate)真的有用吗?

我有一个 Web 应用程序,其中客户端将在本地服务器上运行(即 - 请求不会通过网络发出)。该站点的流量将非常低,因此我试图弄清楚在这种类型的系统中实际的解压缩是否昂贵。性能是一个问题,所以我将设置缓存,但我也在考虑压缩。我不会有带宽问题,因为该站点的流量非常低。所以,我只是想弄清楚在这种类型的系统中压缩是否弊大于利。

0 投票
7 回答
53574 浏览

asp.net - 如何在 IIS7 中进行 gzip 压缩?

我已经为 IIS7 安装了静态和动态压缩,并web.config在我的应用程序Virtual Folder级别设置了这两个值。据我了解,我不再需要在服务器或站点级别启用压缩,我可以使用我的 web.config 文件在每个文件夹的基础上对其进行管理。

我的.config文件中有两个设置,我已经设置为我的应用程序自定义 gzip:

但是,当我运行应用程序时,我可以清楚地看到没有使用 gzip,因为我的页面大小相同。我还在为 FireFox 使用YSlow,这也证实了我的页面没有被压缩。

我在这里想念什么?在 IIS6 中,指定文件类型并将压缩级别设置在 0-10 之间很简单。我没有看到需要指定文件类型或压缩级别,因为默认值似乎涵盖了文件类型,而且我在任何地方都没有看到级别。

0 投票
3 回答
64038 浏览

linux - 使用 Gzip 单独压缩多个文件

我有几个如下所示的目录:

对于每个目录,我想将其中的文件压缩为 *.gz 格式,然后删除未压缩的文件。所以最后我们希望得到这样的东西:

有没有一种简单的 Unix 方法可以做到这一点?

0 投票
1 回答
907 浏览

.net - .net gzip 解压流的问题

这些方法可能有什么问题?

gzipStr 是一个有效的 Gzipped Stream(我可以使用 GzipStream() Compress 成功压缩它)。

为什么total_read总是0???gzip 流是否在解压缩我的流?难道我做错了什么?

我在这里做错了什么???!!!

0 投票
13 回答
35429 浏览

compression - Gzip 与缩小

前几天我进行了一场关于缩小 Javascript 和 CSS 与更喜欢使用 Gzip 的人的热烈讨论。

我会称这个人为 X。

X 说 Gzip 已经压缩了代码,因为它压缩了你的文件。

我不同意。Zip 是一种无损压缩文件大小的方法。无损意味着必须完美地恢复原件,这意味着必须存储信息才能恢复空格、不需要的字符、注释代码和其他所有内容。这会占用更多空间,因为必须压缩更多空间。

我没有测试的方法,但我相信这段代码的Gzip:

仍将大于此代码的 Gzip:

有没有人可以证明这是对还是错。
并且请不要说“这是正确的,因为这是我一直使用的”。

我在这里要求科学证明。

0 投票
1 回答
413 浏览

apache - 如何缓存 Apaches GZIP 压缩内容

Apache 内置了 GZIP 内容(HTML、JPG.. 等)的功能,每次完成时它使用的 CPU 都会比正常情况稍多。

所以我的问题是,是否可以缓存最终压缩版本,而不是让您的机器每次都这样做。

0 投票
3 回答
13155 浏览

php - 如何确定压缩文件的内容长度?

现在,我正在尝试从不允许我启用mod_gzipmod_deflate. 于是我写了一个PHP小脚本,用GZIP压缩并返回给用户。

示例代码:

我现在有两个问题。首先是,我无法确定压缩文件的最终大小以通知浏览器内容长度。通常,我会包括这一行:

但是,如果我这样做了,浏览器会在尝试等待更多数据时挂起。有没有办法计算总大小?或者我应该忽略这个头指令。

另一个问题是,每当我在 Firefox 中查看这个 PHP 文件时,它都会尝试让我下载结果。在 Chrome 中,它只是像我期望的那样显示它。有什么建议么?

编辑:感谢 SoapBox,我用以下代码替换了代码的结尾:

这对内容长度非常有用!但我仍然让 Firefox 下载文件而不是显示它。:(

再次编辑:这是修改后的代码结尾代码,由 Cletus 提供。

我将开始一个新问题来弄清楚为什么 Firefox 一直尝试下载该文件。