I have patched up our apache 1.3.20 server with the current source/patch at http://cvs.apache.org/viewcvs.cgi/httpd-proxy/module-1.0/ with the effect that the it now returns HTTP/1.1 responses instead of HTTP/1.0. This server is used as a reverse proxy server that fetches content from two different real servers using ProxyPass and RewriteRule [P] directives.
However, after applying the patch the reverse proxy seems to eat some Set-Cookie: headers set by my real servers in server redirect responses. Here is an example: I have the reverse proxy listening at xxx.yyy.zzz.www and the real server is listening on 127.0.0.1, both are running on the same machine. If I do a request directly to the real server, I get -----------------start------------------- bash-2.04$ telnet 127.0.0.1 80 Trying 127.0.0.1... Connected to 127.0.0.1. Escape character is '^]'. GET /agent/moblogin?USERNAME=<user>&PASSWORD=<passwd>&LOCALE=<locale> HTTP/1.1 Host: myhost.mydomain.com HTTP/1.1 302 Moved Temporarily Server: MDNServer Connection: close Set-Cookie: moblocale=en_US;path=/ Location: /agent/mobmain?mobmain=1 Content-Type: text/html Set-Cookie: mobsess=PKG2I2QAAAACDFD0WURQAAA;path=/ <HEAD><TITLE>302 Moved Temporarily</TITLE></HEAD> <H1>302 Moved Temporarily</H1><BODY> </BODY> Connection closed by foreign host. -----------------stop------------------- However, when I do the same request to the reverse proxy, the first Set-Cookie: header disappears: -----------------start------------------- bash-2.04$ telnet xxx.yyy.zzz.www 80 Trying xxx.yyy.zzz.www... Connected to xxx.yyy.zzz.www. Escape character is '^]'. GET /agent/moblogin?USERNAME=<user>&PASSWORD=<passwd>&LOCALE=<locale> HTTP/1.1 Host: myhost.mydomain.com HTTP/1.1 302 Moved Temporarily Date: Fri, 30 Nov 2001 00:00:58 GMT Server: Apache/1.3.20 (Unix) mod_ssl/2.8.4 OpenSSL/0.9.6a Content-Type: text/html Location: /agent/mobmain?mobmain=1 Set-Cookie: mobsess=PKH1HEYAAAACFFD0WURQAAA;path=/ X-Cache: MISS from myhost.mydomain.com Transfer-Encoding: chunked 61 <HEAD><TITLE>302 Moved Temporarily</TITLE></HEAD> <H1>302 Moved Temporarily</H1><BODY> </BODY> 0 Connection closed by foreign host. -----------------stop------------------- Why doesn't the proxy let the "Set-Cookie: moblocale=en_US;path=/" header through? It just disappears! What happens here? M.
