foreach my $l (qw/ErrorLog TransferLog LockFile PidFile ScoreBoardFile/) { $$l = "/usr/local/app/apache_modperl/logs/$l"; };
Dude, you're scaring me with that. It looks just like $1 and $$1.
PERL_TRACE output clearly shows that half of the perl section is being processed twice, causing a VirtualHost overlap warning. Is it supposed to work like this?
Yes. See http://perl.apache.org/docs/1.0/guide/config.html#Apache_Restarts_Twice_On_Start
I don't use <Perl> sections, so I've never had this problem before, but it seems strange that this should trigger complaints from something like setting a virtual host. Maybe you should clear the virtual host settings at the top of your <Perl> code.
- Perrin