In Apache kann ich ja per LocationMatch z.b. einen bestimmten Handler setzen, also:
<LocationMatch "^/(module1|module2)">
PerlHandler Foo::Bar
....
</LocationMatch>
Jetzt wüsste ich gern, ob ich in diesem Block Zugriff auf den gematchten Pfad habe. Ich habe in der Doku nichts dazu gefunden.
Also beim Aufruf der URL /module1/action/foo brauche ich das "module1" und möchte es an den Handler weitergeben.
Ich kann im Handler mittels der Umgebungsvariable SCRIPT_NAME auf den kompletten Pfad zugreifen, dachte aber, es wäre schöner, wenn ich das in der Apache-Config erledige.
Hintergrund ist, dass ich bisher über PATH_INFO auf den Pfad zugreife. Das funktioniert bisher, weil die URLs alle ein bestimmtes Präfix haben:
<Location /app>
PerlHandler Foo::Bar
</Location>
Beim Aufruf von /app/module1/action/foo bekomme ich in PATH_INFO dann /module1/action/foo.
Bei LocationMatch geht mir aber das /module1 verloren.
Wäre mod_rewrite hier zu empfehlen (also internes mappen von
/(module1|module2) aud
/app/$1) oder frisst das dann bei jedem Request Performance? Gibt es da Erfahrungswerte?