Just a Theory

Black lives matter

A mod_perl Bug?

I think I’ve found a bug in the <Perl> sections of mod_perl. More information can be found here. The upshot is that the Location directive, when used in <Perl> sections, seems to be used internally as a LocationMatch directive instead.

I ran into this because I was simplifying Bricolage’s Apache configuration. I moved the whole complex Apache configuration into a Bricolage module, so that it’s much simpler to configure Apache to run Bricolage — and much easier to use virtual hosts. (This is all in Bricolage’s CVS, BTW — it’s not yet released). I got around the problem by specifying all of my Location directives with a caret (^) prepended to them so that they behave like a regex version of Location (i.e., LocationMatch), but I’m kinda annoyed to have to do that. Am I right in thinking that the LocationMatch directives add a bit more overhead to every request?

Originally published on use Perl;