Angenommen, sie generieren Ihre Seiten dynamisch mittels PHP und haben hierzu folgende Struktur gewählt:
Den Aufruf der index.php ergänzen Sie dann um einen Parameter für das auszuwählende Thema, also z.B. "./?dir=Thema2"
.
Würden nun die Themenverzeichnisse direkt aufgerufen, also z.B. "Verzeichnis/Thema2/"
, dann sollten die Inhalte nicht gelistet werden, was über entsprechende Servereinstellung oder auch über eine Index-Datei in jedem Verzeichnis erreicht werden kann. Was aber schreibt man in diese Index-Dateien?
Nicht selten werden sie einfach leer gelassen oder mit einem Hinweis versehen. Wünschenswert wäre doch aber die Weiterleitung an das Script im darüber liegenden Verzeichnis mit Parameterübergabe. Um die Adresse nicht individuell anpassen zu müssen, habe ich folgendes kleine Script entwickelt:
<?php
if(preg_match('~(.+/)(.+)/~',$_SERVER['SCRIPT_NAME'],$d))
header("Location: http://".$_SERVER['SERVER_NAME'].$d[1].'?dir='.$d[2],TRUE,301);
?>
Die Variable $d[1] enthält die Verzeichnisstruktur bis auf das aktuelle Verzeichnis; dieses ist in $d[2] gespeichert wird und als Parameter angehängt.
Die Weiterleitung sollte permanent angelegt sein und erfolgt deshalb mit dem Statuscode 301
.