Hello all, I'm using Apache as a HTTP proxy. Regarding the request and response headers, I've done some tests and noticed different behaviour in the request and response direction.
The request headers are compressed (i.e. headers with same name are merged into one header and comma separated). e.g. hdr: value1 hdr: value2 becomes, hdr: value1, value2 This due to ap_get_mime_headers_core() calling apr_table_compress(). It occurs in protocol.c before Apache even detects that the incoming request is a proxy request. The response headers on the other hand are read by mod_proxy in ap_proxy_read_headers() which calls apr_table_add() but not apr_table_compress(). RFC 2616 states that header compression MUST be allowed, i.e. it's optional, therefore Apache's behaviour is compliant. However if a proxy is between a non-compliant client and/or server then it may be best to leave the headers in their original form. If a direct connection works and a proxied connection fails then the proxy will be perceived as the problem. Could someone point out a reason for the different behaviour in the request and response path? How about making the behaviour configurable so that it's consistent in both directions and if necessary the headers can be left in their original uncompressed form? By the way, my tests were on httpd 2.0.59, however reading the source for 2.2.3 suggests it has same behaviour. Thanks for your time, Paul -- _______________________________________________ Surf the Web in a faster, safer and easier way: Download Opera 9 at http://www.opera.com Powered by Outblaze