Wed Feb 17 20:56:46 EET 2010

Solution to a problem with VirtualHosts on Debian Lenny (Default Virtualhost opening by default overwritting the rest of the configured VirtualHosts)

Configuring some Virtualhosts on a Debian server I administrate has led me to
a really shitty problem. The problem itself consisted in that nomatter what
kind of the configured VirtualHosts on the server I try to access the default
one or the first one listed among Virtualhosts gets accessed.
Believe me such an Apache behaviour is a real pain in the ass! I went through
the VirtualHosts configurations many without finding any fault in them,
everything seemed perfectly fine there.
I started doubting something might prevent VirtualHosts to be served by the
Webserver. Therefore to check if VirtualHosts configurations are properly loaded
I used the following command:
debian-server:~# /usr/sbin/apache2ctl -S
Guess what, All was perfectly fine there as well. The command returned, my
webserver configured VirtualHosts as enabled (linked) in:
/etc/apache2/sites-enabled
I took some time to ask in irc.freenode.net #debian channel if somebody has
encountered the same weirdness, but unfortunately noobody could help there.
I thinked over and over the problem and I started experimenting with various
stuff in configurations until I got the problem.

The issue with non-working Virtualhosts in Debian lenny was caused by;
wrong NameVirtualHost *:80 directive
It's really odd because enabling the directive as NameVirtualHost *:80
would report a warning just like there are more than one NameVirtualHost
variable in configuration, on the other hand completely removing it won't
report any warnings during Apache start/restart but same time VirtualHosts
would still be non-working.

So to fix the whole mess-up with VirtualHosts not working I had to modify in;
my /etc/apache2/sites-enabled/000-default as follows;

NameVirtualHost *:80 changes to
NameVirtualHost *

The rest of the Virtualhost stays the same e.g.;

This simple thing eradicated the f*cking issue which tortured me
for almost 3 hours! ghhh