Debian has a reasonably sane way of setting up Apache 2 for virtual
hosts, with each site's config being in a separate file and the
opportunity to enable/disable a site while leaving its config intact:

  http://svn.debian.org/wsvn/pkg-apache/trunk/apache2/README.Debian

Ubuntu ships with a sites-available/default which provides a default
site, and it's symlinked from sites-enabled/000-default, which is fair
enough.

On a server I'm setting up we have no need for a default Ubuntu site
(nor indeed one customized by a hosting provider), so I remove the above
symlink.  And lots of sites -- sites which definitely weren't the
default -- suddenly fail.  Put it back and (even though the other sites'
config mean no URL is serving the site it configures) the other sites
start working again.

Oh, that's because Ubuntu bundle the config to turn on name-based
virtual hosting, a directive that only needs setting once on the server,
into the top of a config file which supposedly only configures one
virtual host:

  
http://www.mirrorservice.org/sites/archive.ubuntu.com/ubuntu/pool/main/a/apache2/apache2-common_2.0.55-4ubuntu2.5_i386.deb/etc/apache2/sites-available/default?extract=true

So there's this nice infrastructure for enabling sites separately ...
completely undermined by one of them containing necessary server-wide
config.  Nice one, Ubuntu.

Smylers

Reply via email to