0

我为 apache http 服务器编写了一个自定义模块,如下所述:http ://httpd.apache.org/docs/2.4/developer/modguide.html

ap_rprintf(r, "Hello, world!");

我被问及mod_deflate http://httpd.apache.org/docs/2.2/mod/mod_deflate.html的行为。

如果客户端接受压缩,我的模块产生的对客户端的响应是否会被 mod_deflate 压缩Accept-Encoding: gzip

如果我的回复已经被压缩了,我可以阻止 mod_deflate 工作吗?

您对此有任何参考/链接吗?

谢谢。

4

1 回答 1

2

默认情况下,如果满足正常条件,它将被压缩。您可以选择退出几种方式(以下按侵入性的粗略顺序排列):

  • 为每个请求设置 no-gzip 环境变量 (r->subprocess_env)
  • 移除 mod_deflate 输出过滤器(mod_proxy_wstunnel.c 有移动过滤器的示例)
  • 在编写响应之前取消设置接受编码标头
  • 设置 Content-Encoding: gzip 响应头

唯一的参考是 mod_deflate.c + 输出过滤器基础知识。

于 2014-06-30T10:18:01.143 回答