You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl@perl.apache.org by Jie Gao <J....@sydney.edu.au> on 2015/11/29 09:59:28 UTC

Re: Upgrade to Apache 2.4 breaks encoding in a PerlOutputFilterHandler

* Vincent Veyron <vv...@wanadoo.fr> wrote:

> Date: Fri, 29 May 2015 19:13:50 +0200
> From: Vincent Veyron <vv...@wanadoo.fr>
> To: "Kevin A. McGrail" <KM...@PCCC.com>
> CC: modperl@perl.apache.org
> Subject: Re: Upgrade to Apache 2.4 breaks encoding in a
>  PerlOutputFilterHandler
> X-Mailer: Sylpheed 3.2.0 (GTK+ 2.24.10; i486-pc-linux-gnu)
> 
> 
> I found the problem : it appears mod_deflate now runs _before_ my PerlOutputFilterHandler, which then gets gzip encoded content. 
> 
> Disabling mod_deflate fixes it, but this was not necessary in Apache 2.2. Something must have changed in the priority type of the modules.

Well, check out this: https://perl.apache.org/docs/2.0/user/handlers/filters.html#C_PerlOutputFilterHandler_ .


Regards,


Jie

Re: Upgrade to Apache 2.4 breaks encoding in a PerlOutputFilterHandler

Posted by Vincent Veyron <vv...@wanadoo.fr>.
On Sun, 29 Nov 2015 18:18:21 +0000
Dr James Smith <js...@sanger.ac.uk> wrote:

> I knew it was a problem - but due to our set up of front end proxy / 
> mod_perl then this wasn't an issue.. the mod_perl server handles the 
> filter - and the front end proxy does the gzipping (we use Brocade 
> Traffic Mangers and Apache in different places) - in most production 
> environments this is the "usual" setup...
> 

Ha, that would explain it. Thanks for the heads up.

My site is low traffic, so I only use one Apache server for everything.


-- 
					Bien à vous, Vincent Veyron 

https://marica.fr/ 
Suivi des contentieux juridiques, des sinistres d'assurance et des contrats

Re: Upgrade to Apache 2.4 breaks encoding in a PerlOutputFilterHandler

Posted by Dr James Smith <js...@sanger.ac.uk>.
I knew it was a problem - but due to our set up of front end proxy / 
mod_perl then this wasn't an issue.. the mod_perl server handles the 
filter - and the front end proxy does the gzipping (we use Brocade 
Traffic Mangers and Apache in different places) - in most production 
environments this is the "usual" setup...

On 29/11/2015 18:15, Vincent Veyron wrote:
> On Sun, 29 Nov 2015 19:59:28 +1100
> Jie Gao <J....@sydney.edu.au> wrote:
>> Well, check out this: https://perl.apache.org/docs/2.0/user/handlers/filters.html#C_PerlOutputFilterHandler_ .
>>
> Hi Jie,
>
> Yes, the instructions on this page work well; but with those, I need to add 'SetOutputFilter DEFLATE' in every virtual host.
>
> I use a global configuration in deflate.conf, and got it to work in 2.4 by replacing :
>
> #               AddOutputFilterByType DEFLATE text/html text/plain text/xml
>
> with this:
>                                                                                                                     
> FilterDeclare   COMPRESS CONTENT_SET
> FilterProvider  COMPRESS DEFLATE "%{CONTENT_TYPE} =~ m#^text/(html|plain)#"
> FilterChain     COMPRESS
> FilterProtocol  COMPRESS  DEFLATE change=yes;byteranges=no
>
> Which places mod_deflate after my PerlOutputFilterHandler in the chain.
>
> I was surprised nobody else had the problem before, though?
>



-- 
 The Wellcome Trust Sanger Institute is operated by Genome Research 
 Limited, a charity registered in England with number 1021457 and a 
 company registered in England with number 2742969, whose registered 
 office is 215 Euston Road, London, NW1 2BE. 

Re: Upgrade to Apache 2.4 breaks encoding in a PerlOutputFilterHandler

Posted by Jie Gao <J....@sydney.edu.au>.
Hi Vincent

Thanks for sharing your solution.

Regards,

Jie 

* Vincent Veyron <vv...@wanadoo.fr> wrote:

> Date: Sun, 29 Nov 2015 19:15:20 +0100
> From: Vincent Veyron <vv...@wanadoo.fr>
> To: Jie Gao <J....@sydney.edu.au>
> CC: modperl@perl.apache.org
> Subject: Re: Upgrade to Apache 2.4 breaks encoding in a
>  PerlOutputFilterHandler
> X-Mailer: Sylpheed 3.2.0 (GTK+ 2.24.10; i486-pc-linux-gnu)
> 
> On Sun, 29 Nov 2015 19:59:28 +1100
> Jie Gao <J....@sydney.edu.au> wrote:
> > 
> > Well, check out this: https://perl.apache.org/docs/2.0/user/handlers/filters.html#C_PerlOutputFilterHandler_ .
> > 
> 
> Hi Jie,
> 
> Yes, the instructions on this page work well; but with those, I need to add 'SetOutputFilter DEFLATE' in every virtual host.
> 
> I use a global configuration in deflate.conf, and got it to work in 2.4 by replacing :
> 
> #               AddOutputFilterByType DEFLATE text/html text/plain text/xml                                            
> 
> with this:
>                                                                                                                    
> FilterDeclare   COMPRESS CONTENT_SET
> FilterProvider  COMPRESS DEFLATE "%{CONTENT_TYPE} =~ m#^text/(html|plain)#"
> FilterChain     COMPRESS
> FilterProtocol  COMPRESS  DEFLATE change=yes;byteranges=no
> 
> Which places mod_deflate after my PerlOutputFilterHandler in the chain.
> 
> I was surprised nobody else had the problem before, though?
> 
> -- 
> 					Bien à vous, Vincent Veyron 
> 
> https://marica.fr/ 
> Suivi des contentieux juridiques, des sinistres d'assurance et des contrats

Re: Upgrade to Apache 2.4 breaks encoding in a PerlOutputFilterHandler

Posted by Vincent Veyron <vv...@wanadoo.fr>.
On Sun, 29 Nov 2015 19:59:28 +1100
Jie Gao <J....@sydney.edu.au> wrote:
> 
> Well, check out this: https://perl.apache.org/docs/2.0/user/handlers/filters.html#C_PerlOutputFilterHandler_ .
> 

Hi Jie,

Yes, the instructions on this page work well; but with those, I need to add 'SetOutputFilter DEFLATE' in every virtual host.

I use a global configuration in deflate.conf, and got it to work in 2.4 by replacing :

#               AddOutputFilterByType DEFLATE text/html text/plain text/xml                                            

with this:
                                                                                                                   
FilterDeclare   COMPRESS CONTENT_SET
FilterProvider  COMPRESS DEFLATE "%{CONTENT_TYPE} =~ m#^text/(html|plain)#"
FilterChain     COMPRESS
FilterProtocol  COMPRESS  DEFLATE change=yes;byteranges=no

Which places mod_deflate after my PerlOutputFilterHandler in the chain.

I was surprised nobody else had the problem before, though?

-- 
					Bien à vous, Vincent Veyron 

https://marica.fr/ 
Suivi des contentieux juridiques, des sinistres d'assurance et des contrats