Implementing Hostname recognition in HTTP Servers

Hi all --

I'm currently wrestling with a moderately thorny issue while in the
process of implementing HTTP/1.1 support for my server.

The RFC specifies that the HTTP server MUST accept URLs of the form
http://www.foo.org/index.html, and that they SHOULD (or is it MUST?)
furthermore verify that the hostname passed in such requests is
actually one that is served by the HTTP server.

Implicit in this specification, it would seem, is the ability to do
some sort of multisite hosting using hostnames to discriminate.
(i.e. different responses to http://www.foo.org and
http://www.bar.org, even if they're the same machine)

This all seems easy enough, until I consider how to treat those poor
HTTP/1.0 clients that don't know to pass a hostname as part of the
request.  I have devised a method that I think will work for dealing
with this, involving a default hostname and some sneaky URL
manipulation, but I'm not 100% happy with it.

So, I was wondering:

Is there a convention for doing this that should be followed in order
to avoid pitfalls?  It's soemwhat outside the pruview of the RFCs, but
I wonder if people know of other servers that have this functionality,
and perhaps more importantly how widely this functionality is
deployed... 

Thanks for any help you can offer.

Josh Bluestein
josh@epilogue.com
Epilogue Technology Corporation
An Integrated Systems Company

Received on Wednesday, 15 April 1998 04:08:16 UTC