mod_deflate does not work for zipped incoming soap request
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Hi there,
I'm trying to make mod_deflate work to decompress zipped incoming soap requests.
The system is something like this:
webservice client --> httpd -->mod_jk --> Webservice exposed by Jboss server.
httpd version is 2.2.3
Since the SOAP messages are somehow big, I want the webservice client to send zipped soap message. And the HTTPD should de-compress it with mod_deflate and then pass the de-compressed soap requests to the application server via mod-jk.
I added the following config into httpd.conf:
#---------------------------------
SetOutputFilter DEFLATE
SetInputFilter DEFLATE
DeflateFilterNote input
DeflateFilterNote output
DeflateFilterNote ratio
LogFormat '%h %t "%r" %{output}n/%{input}n (%{ratio}n%%)' deflate
CustomLog logs/deflate_log.log deflate
#---------------------------------
I expect that httpd should decompress all the incoming http request with "Content-Encoding=gzip" with this configuration. But when I check the debug logging of mod_jk, I found that the requests passed to mod_jk were NOT DECOMPRESSED.
Here is the access log of an incoming request (LogFormat: LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" \"%{Content-Length}i\" \"%{Content-Type}i\" \"%{Content-Encoding}i\"" combined):
172.18.50.17 - - [30/Nov/2010:20:31:58 +0800] "POST /ws/TestService HTTP/1.1" 400 - "-" "Jakarta Commons-HttpClient/3.1" "806" "text/xml;charset=UTF-8" "gzip"
We can see that the incoming message is a gzipped message.
and in deflate_log.log:
172.18.50.17 [30/Nov/2010:20:31:58 +0800] "POST /ws/TestService HTTP/1.1" -/- (-%)
172.18.50.17 [30/Nov/2010:20:46:51 +0800] "GET / HTTP/1.1" -/- (43%)
According to the first line it seems that the mod_deflate does NOT work for incoming requests(?), since input/output/ratio are all empty.
According to the second line it seems that the mod_defalte does work for outcoming response...because at least ratio is not empty...(so that we can be sure that mod_deflate is loaded properly)
I googled a lot and went over mod_deflate source code but found no hints.
Is there anyone has make some similiar system work? or is there any further config I should add to make deflate work for the incoming requests? and is there further debugging methods? (I put LogLevel to debug, but there is no related logs..)
Thanks!
[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]