[users@httpd] Re: Preventing mod_deflate dechunking of dynamic content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

on 09/19/2006 02:38 PM Joshua Slive said the following:
> On 9/19/06, Manuel Lemos <mlemos@xxxxxxx> wrote:
>> So, my doubt is: how can I configure Apache to return a response that
>> may trigger chunking/compression or not that mod_gzip/mod_deflate
>> performs ?
>>
>> I though of returning a custom header like "x-dechunk: no" from the PHP
>> script response. But how can I configure Apache with
>> mod_gzip/mod_deflate to not compress responses when that header is
>> returned by a PHP script?
> 
> It's easy enough to turn on or off deflate per-request using the
> no-gzip environment variable.  But unfortunately, I don't think there
> is any way to set an environment variable based on a response header.
> This is because env variables need to be set early in order to be
> useful for content handlers.  So they are set too early to look at
> response headers.
> 
> One option would be to have your php script do an internal redirect to
> a non-deflated page.  Another option would be to deflate everything,
> but pad small response segments up to DeflateBufferSize.  (The padding
> should be mostly compressed away anyway.)

Looking closer at the problem, I realized that mod_deflate does not
dechunk gzip compressed responses, like mod_gzip does.

So, for the purpose of flushing HTML blocks with Javascript sections,
that is fine, although I wonder if the overhead of compress small blocks
 still pays the bandwidth/throughput benefits. Maybe it does.

Now I wonder if there is a way to force dechunking Apache 2 responses.

OTOH, mod_gzip allows turning off compression (and its dechunking)
dynamically with configuration line like thos:

mod_gzip_item_exclude         rspheader  "X-do-not-compress-this: yes"

So, when my PHP scripts issue the header X-do-not-compress-this,
mod_gzip does not compress the response nor dechunks it.

Dechunking by mod_gzip is turned on by the mod_gzip_dechunk
configuration option . There seems to not exist an option to do that
dynamically. I wonder if there is a way to turn off dechunking with
setenvif .

-- 

Regards,
Manuel Lemos

Metastorage - Data object relational mapping layer generator
http://www.metastorage.net/

PHP Classes - Free ready to use OOP components written in PHP
http://www.phpclasses.org/


---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx
   "   from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx
For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx



[Index of Archives]     [Open SSH Users]     [Linux ACPI]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Squid]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux