Also man kann da schöne Sachen machen wie z.B. die Routing-Table erweiteren wenn der Administrator eingeloggt ist:
if( $routes->{default}{pin} && $ENV{HTTP_PIN} eq $routes->{default}{pin} ){
my $adm = main->configini($routes->{default}{filedir}."/adm.ini") or die;
%$routes = (%$routes,%$adm);
}
Und für die Navigation im Browser wird aus der Routing-Table heraus die ganze Link-Hierarchie erzeugt. D.h., daß der Zweig mit den Administrator-Anwendungen eben nur dann zu sehen ist wenn der Administrator eingeloggt ist. Andererseits erzeugt ein Request auf die Admin-Anwendungen einen HTTP-Status 404.
Also ich finde das besser als andersherum, also daß der Request auf eine Admin-Anwendung auf das Login-Formular umleitet.
Nur ein Beispiel was eine echte Routing-Table möglich macht.