When I first started using Ubuntu, I was coming from a distro journey that started with FreeBSD and took in Mandrake and Gentoo along the way; I hadn’t worked with any Debian-based systems before and was new to the way that Apache is configured on those platforms.
The Apache configuration is all in /etc/apache2/ – and while I do have an httpd.conf file in that directory, it is empty. I’ve got an apache2.conf which holds the global settings for the web server and also states which other items to include.
There are two directories which deal with modules. One is /etc/apache2/mods-available/ – this holds the .load files for the various modules which are available on this system, with the LoadModule commands appropriate to each. Some modules also have a .conf file here, if there are additional settings to go with them.
The other directory is /etc/apache2/mods-enabled, which contains only symlinks – these are .load files which link to the same-named .load file in /etc/apache2/mods-available, but only load files specified here in the mods-enabled directory will ever be loaded.
The sites setup follows a similar model to the Modules. All configuration files are held in the /etc/apache2/sites-available directory, the name of the file doesn’t matter. The files here contain the <VirtualHost> tags, rather than scattering these in httpd.conf or other locations.
There is a sister directory, /etc/apache2/sites-enabled which contains only symlinks, pointing back at the sites-available directory. Basically this allows you to turn sites on and off in a painless and controlled manner, without losing the configuration or having confusing comment blocks appearing. I find this very clean and usable, helping keep the various independent sites, well, independent.
Ubuntu and Apache
It took me a while to settle to using this system but I now find it clean and modular. I never did find any great documentation on how it works and too often I fall over examples where someone hasn’t understood what’s going on … so I thought I’d write it down in case it helps. Do you love or hate this “unique” setup – and why? Leave me a comment.