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: [email protected]
" from the digest: [email protected]
For additional commands, e-mail: [email protected]