MakeIndex 1.0.0
Es gibt kein Problem, dass man nicht mit Perl loesen koennte. Dieses Script erstellt in angegebenen Ordnern eine index.html mit einer Auflistung aller, jeweils in den Ordnern enthaltenen, Unterordnern und Dateien.
Der Sinn und Zweck liegt darin, dass die index.html von einem Script erzeugt wird und nicht vom HTTP-Prozess. Manche HTTP-Server, wie z. B. Apache, koennen auch Index Seiten ausliefern, falls es fuer einen Ordner kein Index-File gibt. Das kann jedoch zu einer hohen Prozessauslastung fuehren, da der Prozess mit dem Auslesen der Ordner-Informationen, wie z. B. Filegroessen und File-Aenderungszeiten, beschaeftigt ist. Vorallem wenn viele User ueber HTTP auf einen Ordner zugreifen, oder wenn viele Files in einem Ordner existieren, kann es zu einer hoeheren Auslastung des Prozesses kommen. Die Auslieferung eines statischem HTML-Files fuehrt im Normalfall nicht zu einer hohen Prozessauslastung.
WICHTIGER HINWEIS
Dieses Script ueberschreibt jede index.html. Das Ausfuehren des Script geschieht auf eigene Gefahr.
Konfiguration
- $DEBUG – Diese Variable, gibt Informationen im STDOUT aus, falls sie auf 1 (true) gesetzt ist. An den Index-Files aendert sich dadurch nichts.
- $RECURSIVE – Falls diese Variable auf 1 (true) gesetzt ist, werden in allen Unterordnern jeweils auch index.html Files erzeugt.
- $INTERVAL – Diese Variable dient nur zur Inforamtion. Sie sagt nichts darueber aus, wie oft ein Index-File wirklich erstellt wird. Es haengt von der Cronjob-Einstellung ab, wie oft die Index-Files erstellt werden.
- @INDIR – Dieses Array muss alle Pfade enthalten, in denen Index-Files erstellt werden sollen. Da das Array mit einer qw()-Anweisung erstellt wird, darf ein Pfad keine Leerzeichen enthalten. Die einzelnen Pfade koennen durch Leerzeichen, Tabulatoren oder durch neue Zeilen getrennt sein.
Ausserdem muss ein Cronjob eingerichtet werden, der das Script in einem bestimmten Intervall ausfuehrt. Ein Eintrag im crontab koennte wie folgt aussehen:
*/5 * * * * /home/USER/makeindex.pl