I'm using ubuntu to run a little webserver. Since 7.10 ran out of support I had to update to 9.04.
Nearly everything worked without change (even some mod_perl scripts I wrote).
Only the mod_rewrite rules didn't work any more. They didn't do anything any more.
Ubuntu uses a directory named /etc/apache2/conf.d where additional configurations can be placed, which are included in apache2.conf. There is a directory named /etc/apache2/sites-enabled were are the <VirtualHost> statements placed.
I placed my configurations in conf.d, where I placed Alias, <Location>, <Directory>, and the mod_rewrite statements.
This worked with ubuntu 7.10, but not with 9.04 any more. mod_info told me, that the statements in each file where recognized, but even RewriteLog didn't do anything. The statements were ignored completly.
After much experimenting (and reading in this forum

Now it works, but why? Why did this work in my old configuration and why it changed?
I don't like to fiddle with the sites-enabled configurations; it was much easyer to place anything related in one configuration file...