Re: http://///////////////

On Wed, Feb 05, 2003 at 12:04:08PM +0530, Diwakar Shetty wrote:
> Is the following valid HTTP ??
> telnet web_server_host http_port
> GET http://///////////////    HTTP/1.0

I think that this would be syntactically valid HTTP, at least 
according to the definition of 'absoluteURI' in RFC1945 (S3.2.1), 
*except* that the scheme is specified as 'http', and it violates 
S3.2.2, since a hostname is required (and it must be at least one 
character long).

However, I believe that all of these close alternatives are valid:

GET /////////////// HTTP/1.0

(since /////////////// is a valid relativeURI)

GET http://a/////////////// HTTP/1.0

(since 'a' is a valid hostname, http://a/////////////// becomes a 
valid http URI)

GET xyz://///////////// HTTP/1.0

(since the 'xyz' schema is not defined anywhere, this is a valid 
absoluteURI, although no HTTP server would know what to do with it)

Can I ask what inspired the question in the first place? Is this a real-world discovery, or just an excercise in pathological URIs?


Ian Clelland

Received on Wednesday, 5 February 2003 03:54:34 UTC