httpd-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From André Warnier ...@ice-sa.com>
Subject Re: [users@httpd] Apache/2.0.47 - AIX - DEFLATE enabled - Content-Encoding for a page - shows blank - although it's gzip encoded
Date Wed, 06 May 2009 13:25:06 GMT
Arabinda Sahoo wrote:
> Yes, I can always indentify my URL where Content-Encoding="" by a pattern.

Good, that is something we might be able to use.
> 
> Basically the application is Actuate Reports version 8.

You already mentioned that. But you should not assume that the rest of 
the world knows what "Actuate Reports version 8" actually is. I have no 
idea if this is a cgi-bin that you wrote yourself, a PHP application you 
downloaded from the web, a java application running on some java servlet 
engine to which you proxy with Apache (that's a guess), or whatever.

> 
> The URL for this page which doesn't set header properly - is https://punirtweb1/acweb/servlet/ViewPage?outputType=ROI&outputname=%2fs1%2fBtmu%2fGiroDetails%2eroi&id=10&serverurl=http%3a%2f%2fpunirtapp1%3a8000&connectionHandle=s7whmBpUho%2btg5MUYUgZxq1%2brbtKHLkAq7RmnwSbegyRYEMWxKx8m0pEgUAaXCZHB8OyjFlgo4wmr6%2bgY7wBuIMEv18lQxjMqYBDZL6PJauwr3iZqoReZ6WDG2wLwrh9Vj99AyqFYQrZpg%3d%3d&volume=punirtapp1&closex=false&%5f%5fexecutableid=680&saveoutput=false&format=DHTML&page=1&scalingfactor=100

That's an internal URL that does not help us a lot.

> 
> I can identify all these pages - by "format=DHTML" in the URL string.
> Also, there is a server URL involved " serverurl=http://...."

Good, that is something we might be able to use.
> 
> Actuate Report Server has its own servlets to create content and set type and send them.
It is a paginated report - first page, next page etc - type - text/html

"servlets" sounds java, which sounds back-end servlet engine. Tomcat ?
We really need to pull out these things from you one by one, don't we ?
:-(

So, these are URLs that your front-end Apache is proxying to another 
server at the back-end. It even looks like there may be even another hop 
behind.

What you (and we) would really need to know, is if that back-end itself 
sends any kind of headers that could interfere with mod_deflate doing 
it's job and setting headers properly.

Is there any chance that you can access that back-end server directly, 
without going through Apache, and see what you then get as HTTP headers 
back ?
(All of them, not just the content-encoding one).

Can you also tell us /how/ the Apache front-end passes these request to 
the back-end ? in other words, if you are doing proxying, with what ?


Else you could try the following :

SetEnvIf Request_URI "format=DHTML" when-bad
Header unset Content-Encoding env=when-bad
Header set Content-Encoding "gzip" env=when-bad

One issue is that there is an order in which various output filters are 
called by Apache, and I am not quite sure whether the DEFLATE filter is 
called before or after the Headers filter.
Maybe the order in which you specify them in the apache conf file 
matters, so I would try the lines above, either before, or after the
SetOutputFilter DEFLATE


But it's a bit like groping in the dark at this stage..
Nick is probably going to mumble again (and he'll be right).

Now also just in case : if your back-end server is Tomcat, there exists 
also the possibility of having /it/ compress what it sends back to 
Apache.  And I am quite sure that if Apache gets something that is 
already compressed, DEFLATE is smart enough not to do it again.

---------------------------------------------------------------------
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@httpd.apache.org
   "   from the digest: users-digest-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org


Mime
View raw message