我看到很多关于为服务器响应启用 http 压缩的信息,但是对于传入的请求呢。浏览器在将大型帖子发送到服务器之前对其进行压缩是否有意义?
另一个示例是我们使用的 REST Web 服务。我们必须频繁发送带有大型 XML 文件(10+ MB)的 PUT 请求,并且肯定会在双方看到一些带宽/速度优势。
那么这是服务器端解决的问题还是每个 Web 应用程序都必须单独处理它?
And*_*ndy 34
要将PUT
数据压缩到服务器,您必须压缩请求正文并设置Content-Encoding: gzip
标头。标头本身必须是未压缩的。它记录在mod_deflate 中:
mod_deflate 模块还提供了一个用于解压缩 gzip 压缩请求正文的过滤器。为了激活此功能,您必须使用 SetInputFilter 或 AddInputFilter 将 DEFLATE 过滤器插入到输入过滤器链中。
...
现在,如果请求包含 Content-Encoding: gzip 标头,则正文将自动解压缩。很少有浏览器能够 gzip 请求正文。然而,一些特殊的应用程序实际上支持请求压缩,例如一些 WebDAV 客户端。
一篇描述它的文章在这里:
你是怎么做到的?这是一个简介,同样来自 mod_deflate 源代码:仅适用于主请求/无子请求。这意味着如果我们选择使用它,请求的整个主体必须是 gzip 压缩的,不可能只压缩包含文件的部分,例如在多部分请求中。
另外,浏览器可以通过Accept-Encoding
按照此处设置标头来请求压缩服务器响应内容:
GET /index.html HTTP/1.1
Host: www.http-compression.com
Accept-Encoding: gzip
User-Agent: Firefox/1.0
Run Code Online (Sandbox Code Playgroud)
这会将压缩数据返回给浏览器。
归档时间: |
|
查看次数: |
64321 次 |
最近记录: |