Re: Claification requested in Host:

> From: "Roy T. Fielding" <fielding@kiwi.ICS.UCI.EDU>

> >Here is a HTTP 1.1 question for you.  According to the spec 14.23, the
> >Host field is defined as
> >	"Host" ":" host [ ":" port ]
> >where (in 3.2.2), host is defined as
> >	<a legal Internet host domain name or IP address...>
> >
> >The question is whether a single component name consititute a "legal"
> >Internet host domain name?  For example, a user types in "foo" at his
> >browser, which runs in domain "xyz.com".  The browser is smart enough
> >to assume the use wants to talk to "foo.xyz.com", and hence gets the
> >correct IP address.  But in the HTTP request, the browser sends
> >	Host : foo

How does a proxy handle this?
This seems like something that should be nailed down in the 1.1 spec.

Consider:

	client xxx.foo.com requests 
		url http://www/file.html 
		from proxy proxy.com

	proxy.com gets request, and looks up what?

		www.proxy.com (www in the local context, potentialy)
	
		www.foo.com (suffix the implied client domain)

Problem:

	client xxx.blue.foo.com requests same as above

	proxy.com tries
		www.blue.foo.com, which doesn't exist

		client would have found locally the www.foo.com entry,
		however


I.e., 
		proxy-located resolution of DNS names
		forces proxy-local resolution rules 
		to be applied to partial names

This can be fixed by requiring the client to do resolution
with reverse lookup to submit complete names to the proxy.


The 1.1 spec should require complete names,
either by:

	limiting URLs to fully-specified names only

   or
	requiring client-side completion of partially-specified names.

Joe
----------------------------------------------------------------------
Joe Touch - touch@isi.edu		    http://www.isi.edu/~touch/
ISI / Project Leader, ATOMIC-2, LSAM       http://www.isi.edu/atomic2/
USC / Research Assistant Prof.                http://www.isi.edu/lsam/

Received on Wednesday, 19 February 1997 11:16:37 UTC