Angenommen, ich habe einen htdocs-Verzeichnisbaum, der von lighttpd bedient wird
htdocs
htdocs/foo
htdocs/foo/spam
htdocs/foo/eggs
htdocs/foo/eggs/stirred
htdocs/foo/eggs/fried
htdocs/bar
htdocs/bar/bacon
Nun möchte ich einzelne Unterbäume schützen, je nachdem, ob sich htpassw
irgendwo weiter oben in der Hierarchie eine Datei befindet, die htpasswd
natürlich die Anmeldeinformationen der berechtigten Benutzer enthält. Beispielsweise eine htpasswd
Datei unter
htdocs/foo/eggs/.htpasswd
eggs
was eine Authentifizierung für den gesamten Unterverzeichnisbaum erforderlich machen würde .
htdocs/foo/eggs
htdocs/foo/eggs/stirred
htdocs/foo/eggs/fried
Ich weiß, wie man lighttpd so konfiguriert, dass eine bestimmte htpasswd
Datei an einem bestimmten Ort verwendet wird, um mit einem bestimmten URL-Muster zu arbeiten. Aber so etwas zu konfigurieren, erscheint mir etwas seltsam.
Meine beste Idee war bisher, den relevanten Teil der URL zu extrahieren, um einen Pfad in das Dateisystem für die htpasswd-Datei zu konstruieren. Das führt jedoch zu Problemen, wenn vorher oder später bestimmte Regeln zum Umschreiben von URLs angewendet werden.
Im Wesentlichen suche ich danach, dass beim eigentlichen Dateizugriff der Verzeichnisbaum nach oben durchsucht wird, um eine möglicherweise vorhandene hwpasswd
Datei zu finden. Wie kann ich das tun?