Serving Multiple Domains Q & A Discussion between Donald McHose and Rusty Tucker of SpiderIsland Software >Rusty ..would you mind trying >www.southport-maritime.org >and seeing what you make of the address.I have just gone through an expensive >run around with these dns people and they say the only way to get this to >work is to point www.southport-maritime.org to our ip address/southport Yes, that's what you want to do. >This is not exactly what I had in mind.I was under the impression that the >address url would show up as the southport domain and NOT as as ip >address/what ever.What or were am I missing the logic of this ( what I >thought was a rather simple affair) domain name/ virtual server stuff? >Thank you for your time >Don DNS pointing to your IP is different than the virtal server stuff. It's easier to understand if you know some of the HTTP internals. What happens is... You load a URL into your browser: http://www.southport-maritime.org/ To us humans, it looks like one thing. To the browser, there are three parts: The protocol: http:// - good old HTTP The server's address: www.southport-maritime.org - your(?) server The resource / - root level homepage The browser can do that. To make a connection to www.southport-maritime.org, the browser needs to know the IP address for www.southport-maritime.org. This is where DNS comes in. So the broswer does a NameToAddress DNS look up to convert www.southport-maritime.org to a 32 bit IP address. You want this to be the same IP address as the machine running your web server. Then the browser creates a request using the IP address and info in the URL. There can, and usually are, more "headers" than I'm showing here. But, this should get you a good idea how it works. T There are are couple parts to a typical request from a browser. There may also be data in the "message body," but that's a different story. The 2 basic parts of a HTTP request - the "request line" ( GET... , ( may also be POST and others ) - headers ( Host:, User-Agent: ... ) GET / HTTP/1.0 Host: www.southport-maritime.org User-Agent: Navigator ( .. other headers.. ) When the web server accepts the request, it parses the text to discover the resource being requested, and for which host the request is for ( based on the "Host:" header ). If that host is in the server's table of virutal hosts, it will server the request relative from the location you specify in the virtual host table. In your case, you want to map www.southport-maritime.org to the location /southport, so that www.southport-maritime.org requests will be served from the "southport" folder in the server's "web space." It becomes the equivalent of... GET /southport/ HTTP/1.0 And that's the request line that will make your virtual host appear. Rusty