httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "William A. Rowe, Jr." <>
Subject Change in proxy_http behavior between 1.3 HEAD and 2.0 HEAD
Date Thu, 22 Aug 2002 17:27:55 GMT

A number of CGI apps and apparently some IIS extensions do not properly
seperate the headers from the response body with a cr-lf.

I'd argue that this breaks the rule of "be liberal in what you accept, strict
in what you send".  Since all of these proxied sites are returning 502 in
httpd 2.0, but were served [abiet not correctly] in httpd 1.3, this is probably
behavior we need to reconsider for 2.0.

The following reply by a proxied http server works in apache 1.3, however,
the 'outch' line is consumed by the header parser:

HTTP/1.1 200 OK
Date: Sun, 18 Aug 2002 09:00:00 GMT
Content-Type: text/plain

That Hurts!

The response forwarded by a 1.3.27-dev proxy;

HTTP/1.1 200 OK
Date: Thu, 22 Aug 2002 17:15:12 GMT
Via: 1.1
X-Cache: MISS from
Transfer-Encoding: chunked
Content-Type: text/plain


That Hurts!

ok, now what?  In httpd 2.0.36 - .41-dev, we have an entirely different
response due to the HTTP_HEADERS_IN filter, which looks more like,


I suggest it isn't a nice surprise for HTTP/1.1 users.

What are the effects of fixing this bug?

1. proxies can continue to forward responses from broken servers.

2. mod_cgi/cgid would handle broken responses from cgi apps, which
    forget to add the extra cr/lf pair after their headers.

Are these effects desirable?  I'm asking the list, but it would be nice if
the 2.0 server reacts based on the principle of least astonishment.


View raw message