Para PUT
data para o servidor compactado, você deve compactar o corpo da solicitação e definir o Content-Encoding: gzip
header. O cabeçalho em si deve ser descompactado. Está documentado em mod_deflate :
The mod_deflate module also provides a filter for decompressing a gzip compressed request body. In order to activate this feature you have to insert the DEFLATE filter into the input filter chain using SetInputFilter or AddInputFilter.
...
Now if a request contains a Content-Encoding: gzip header, the body will be automatically decompressed. Few browsers have the ability to gzip request bodies. However, some special applications actually do support request compression, for instance some WebDAV clients.
E um artigo descrevendo é aqui :
So how do you do it? Here is a blurb, again from the mod_deflate source code: only work on main request/no subrequests. This means that the whole body of the request must be gzip compressed if we chose to use this, it is not possible to compress only the part containing the file for example in a multipart request.
Separadamente, um navegador pode solicitar que o conteúdo da resposta do servidor seja compactado, definindo Accept-Encoding
header conforme aqui :
GET /index.html HTTP/1.1
Host: www.http-compression.com
Accept-Encoding: gzip
User-Agent: Firefox/1.0
Isso retornará dados compactados ao navegador.