You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by Rasmus Lerdorf <ra...@lerdorf.on.ca> on 1998/01/31 21:32:45 UTC

Dumb TRACE question

When I send a "TRACE HTTP/1.1" request to my Apache server, it responds
right away with "TRACE HTTP/1.1".  Unlike a GET request, it doesn't wait
for a blank line before it responds, and it also doesn't send me back a
200 OK or any other indication of what is going on.

Sending this same request to both Microsoft and Netscape servers results
in a 404 because I guess they both expect a URI.  I thought the HTTP/1.1
spec stated quite clearly that a TRACE request should not include a URI.

-Rasmus


Re: Dumb TRACE question

Posted by Dean Gaudet <dg...@arctic.org>.
You mean "TRACE / HTTP/1.1".  "TRACE HTTP/1.1" appears like an http/0.9
request, which has no headers and is responded to immediately like you
saw. 

Dean

On Sat, 31 Jan 1998, Rasmus Lerdorf wrote:

> When I send a "TRACE HTTP/1.1" request to my Apache server, it responds
> right away with "TRACE HTTP/1.1".  Unlike a GET request, it doesn't wait
> for a blank line before it responds, and it also doesn't send me back a
> 200 OK or any other indication of what is going on.
> 
> Sending this same request to both Microsoft and Netscape servers results
> in a 404 because I guess they both expect a URI.  I thought the HTTP/1.1
> spec stated quite clearly that a TRACE request should not include a URI.
> 
> -Rasmus
> 
> 


RE: Dumb TRACE question

Posted by Lars Eilebrecht <La...@unix-ag.org>.
According to Rasmus Lerdorf:

>  When I send a "TRACE HTTP/1.1" request to my Apache server, it responds
>  right away with "TRACE HTTP/1.1".  Unlike a GET request, it doesn't wait
>  for a blank line before it responds, and it also doesn't send me back a
>  200 OK or any other indication of what is going on.
>  
>  Sending this same request to both Microsoft and Netscape servers results
>  in a 404 because I guess they both expect a URI.  I thought the HTTP/1.1
>  spec stated quite clearly that a TRACE request should not include a URI.

A TRACE must not include an entity but it should (can?) include an URI.
TRACE is typically used to trace a chain of proxies, i.e.
you send "TRACE http://foo.bar/ HTTP/1.1" and see a trace on how the
request was handled.
A server must return a status 200 response on a TRACE request.
IMHO "TRACE HTTP/1.1" without an URI is a bad request and Apache
should return status 400.

*scratch* this sounds familiar to me... haven't I submitted a
PR about this... ah yes, here it is...

 http://bugs.apache.org/private/index/full/377

A bit different, but more or less the same problem.
It was closed... should I re-open it. ;-)


ciao...
-- 
Lars Eilebrecht                        - Computers are not intelligent.
sfx@unix-ag.org                           - They only think they are.
http://www.si.unix-ag.org/~sfx/