Virtual hosting |
Virtual hosting is a method that servers such as Webservers use to host more than one domain name on the same computer, sometimes on the same IP address.
There are two basic methods of accomplishing virtual hosting: name-based, and IP address or ip-based.
==Name based==
Name based virtual hosts use multiple host names for the same webserver IP address.
With web browsers that support HTTP/1.1 (as most do), upon connecting to a webserver, the browsers send the address that the user typed into their browser s address bar (the URL). The server can use this information to determine which web site, as well as page, to show the user.
For instance, a server could be receiving requests for two domains, www.site1.com and www.site2.com, both of which Domain Name System to the same IP address. For www.site1.com, the server would send the HTML file file from the directory /www/JoeUser/site1/, while requests for www.site2.com would make the server serve pages from /www/FrankUser/site2/.
==IP address based==
In IP based virtual hosting, each webserver has a different IP address. The webserver is configured with multiple physical network interfaces, or virtual network interfaces on the same physical interface.
The webserver uses the IP address from the HTTP request to determine which web site to show the user.
=Cons=
If the Domain Name System (DNS) is not properly functioning, it becomes much harder to access a virtually-hosted website. Ordinarily, in this case, the user could try and fall back to using the IP address to contact the system, as in http://12.34.56.78/. However, the web browser doesn t know what hostname to send when this happens, so the server will respond with a default website—often not the site the user expects. This workaround is not really useful for an average web user, but may be of some use to a site administrator while fixing DNS records.
A workaround in this case is to add the IP address and hostname to the client system s hosts file. At this point, accessing the server with the domain name should work again. However, users should be careful when doing this, as any changes to the true mapping between hostname and IP address will be overridden by the local setting.
Another issue with virtual hosting is the inability to host multiple secure websites running Secure Sockets Layer or SSL. Because the SSL handshaking takes place before the expected hostname is sent to the server, the server doesn t know which encryption key to use when the connection is made. One workaround is to run multiple web server programs, each listening to a different incoming port (computing), which still allows the system to just use a single IP address. Another option is to do IP aliasing, where a single computer listens on more than one IP address.|
|