| Register | FAQ | Calendar | Search | Today's Posts | Mark Forums Read |
|
#1
| |||
| |||
| Hi all,I am trying to setup a reverse proxy to transfer data based on soap.Let's say we have three machines:a --- clientb --- reverse proxy server with apache 2.2.0 installedc --- data provider using mod_gsoap.dll, provide asoap envelope with data inside.In b, I only made following change to http.conf:Enable following lines ---LoadModule headers_module modules/mod_headers.soLoadModule deflate_module modules/mod_deflate.soLoadModule proxy_modulemodules/mod_proxy.soLoadModule proxy_http_module modules/mod_proxy_http.soLoadModule proxy_ftp_module modules/mod_proxy_ftp.soLoadModule proxy_connect_module modules/mod_proxy_connect.soAdd following lines in the end --- ProxyRequests Off <Proxy *> Order deny,allow Allow from all </Proxy>ProxyPass /RPTest/ http://192.168.2.100/gsoap/I have three scenarios:Scenario 1 --- c provides uncompressed dataScenario 2 --- c provides gzip-compressed chunk dataScenario 3 --- c provides gzip-compressed unchunk dataIn both scenario 1 and 2, client can receive data well. However, in scenario 3, client can not receive data. Therefore, I tried to compare scenario 2 and 3 on soap envelope sent by c and soap envelope received by a. For data sent by c, scenario 2 has a hex number right before the compressed binary block, while scenario 3 does not have. Seems this hex number is length of binary block. For data recieved by a, in scenario 3, a received compressed data with content-length 0.I wonder if apache http server in b tries to interpret soap content and get no content-length, then apache puts some content-length=0 to repsonse header. In fact, I only need b works as a bridge, simply transfering whatever from c to a without any modification. Is my problem caused by apache modifying content-length in response header? Is there any way to make apache only pass through data from c just as is? Thanks,Enping __________________________________________________ _______________ Invite your mail contacts to join your friends list with Windows Live Spaces. It's easy! http://spaces.live.com/spacesapi.asp...aspx&mkt=en-us |
|
#2
| |||
| |||
| On 4/5/07, tu enping <tuenping@hotmail.com> wrote: > Scenario 1 --- c provides uncompressed data > Scenario 2 --- c provides gzip-compressed chunk data > Scenario 3 --- c provides gzip-compressed unchunk data > > In both scenario 1 and 2, client can receive data well. However, in scenario > 3, client can not receive data. Therefore, I tried to compare scenario 2 and > 3 on soap envelope sent by c and soap envelope received by a. For data sent > by c, scenario 2 has a hex number right before the compressed binary block, > while scenario 3 does not have. Seems this hex number is length of binary > block. For data recieved by a, in scenario 3, a received compressed data > with content-length 0. > > I wonder if apache http server in b tries to interpret soap content and get > no content-length, then apache puts some content-length=0 to repsonse > header. In fact, I only need b works as a bridge, simply transfering > whatever from c to a without any modification. > > Is my problem caused by apache modifying content-length in response header? > Is there any way to make apache only pass through data from c just as is? In general, an apache operating in proxy mode will not care at all about what is in the data, so I think you are looking in the wrong place for your problem. The problem is the Content-Length header being set to zero. Have you checked the content-length header on the response from the origin to the proxy (c to b in your notation)? What does it contain? Joshua. --------------------------------------------------------------------- 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 |
![]() |
| Thread Tools | |
| Display Modes | |
In an effort to better serve ads to our visitors, cookies are used on objectmix.com. For more information, check out our Privacy Policy.