Apache inflate 应用程序/带有 mod_filter

Apache inflate 应用程序/带有 mod_filter

我需要防止 pdf 对象被 gzip 压缩。实际上,这仅在请求来自 Mozilla 浏览器时才需要发生(但由于我无法获得像 application/pdf 的 no-gzip 这样简单的东西,我认为从那里开始更明智)。通过查看 mod_filter 上的 apache 文档,我得到了以下内容:

<Location />
  FilterDeclare gzipDeflate CONTENT_SET
  FilterDeclare gzipInflate CONTENT_SET
  FilterProvider gzipDeflate deflate req=User-Agent $Mozilla/
  FilterProvider gzipInflate inflate resp=Content-Type $application/
  FilterChain +gzipDeflate +gzipInflate
</Location>

根据我的测试,gzipDeflate 过滤器正在发挥作用,所有 Content-Type 不以 application 开头的页面都将被压缩。但是,gzipInflate 似乎根本不起作用。我在 Firebug 中检查了响应,并验证了发送的 Content-Type 是 application/pdf。不过,我还是要问一个可能很愚蠢的问题:

响应的 Content-Type 标头完整地显示为“application/pdf; charset=Windows-1252”。这有什么不同吗?或者 $application/ 大概足以捕获该信息?

任何帮助是极大的赞赏。

还有一点,返回 pdf 对象的 URL 没有 .pdf 扩展名。pdf 本身作为 blob 存储在 Oracle 数据库中,并在适当的时候附加到页面(系统中的所有 URL 使用相同的基线)。这是 stackoverflow 上一位热心成员最初询问的一部分,他向我介绍了 mod_filter,并建议我在此处发布问题。

答案1

事实证明我所做的并没有什么问题。位置标签中的第 1 行是:

SetOutputFilter DEFLATE

删除它之后,一切正常。

相关内容