The term Virtual Host refers to the practice of running more than one web site (such as www.company1.com and www.company2.com) on a single machine. Virtual hosts can be "IP-based," meaning that you have a different IP address for every web site, or "name-based," meaning that you have multiple names running on a single IP address. The fact that they are running on the same server is not apparent to the end user.
Apache was one of the first servers to support IP-based virtual hosts right out of the box. Versions 1.1 and later of Apache support both IP-based and name-based virtual hosts (vhosts). The latter variant of virtual hosts is sometimes also called host-based or non-IP virtual hosts.
Below is a list of documentation pages which explain all details of virtual host support in Apache version 1.3 and later.
If you are trying to debug your virtual host configuration, you
may find the Apache -t -D DUMP_VHOSTS
command line switch
useful. That is, type the following command:
/usr/local/apache/bin/httpd -t -D DUMP_VHOSTS