Apache Webserver:检查是否支持解压缩

使用SetInputFilter DEFLATE我可以强制apache解压缩传入的消息。 有没有办法问Web服务器是否支持传入请求的解压缩。 我希望有一个特定的HEADER信息。 我所知道的唯一HEADER信息是:accept-encoding(用于请求,afaik)和content-encoding(仅告诉客户端响应被编码的权限?)。

mod_deflate的 Apache文档非常清楚地解释了这一点:

input解压缩

mod_deflate模块还提供了一个用于解压缩gzip压缩请求主体的filter。 为了激活此function,您必须使用SetInputFilter或AddInputFilter将DEFLATEfilter插入到inputfilter链中,例如:

 <Location "/dav-area"> SetInputFilter DEFLATE </Location> 

现在如果一个请求包含一个Content-Encoding: gzip头部,主体将被自动解压缩。 很less有浏览器有能力gzip请求身体。 但是,一些特殊的应用程序实际上支持请求压缩,例如一些WebDAV客户端。

这意味着,通过将inputfilter设置为DEFLATE,apache将searchContent-Encoding: gzip的请求标头,并仅在此标头存在时解压input。

除非特别configuration,否则现代浏览器和Web服务器会自动处理压缩scheme的协商。 通常在两个步骤中处理,客户端将通告支持的压缩scheme,服务器将使用两者均支持的压缩scheme进行回复。

看到这篇文章的公平待遇。

如果您确实想首先“检查”,则可以从服务器获取任何资产,并从响应头中parsing“Content-Encoding”的值