Lighttpd-Zugriffskontrolle, die Unterverzeichnisbäume beeinflusst, die einer htpasswd-Datei angehören

Lighttpd-Zugriffskontrolle, die Unterverzeichnisbäume beeinflusst, die einer htpasswd-Datei angehören

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 htpasswirgendwo weiter oben in der Hierarchie eine Datei befindet, die htpasswdnatürlich die Anmeldeinformationen der berechtigten Benutzer enthält. Beispielsweise eine htpasswdDatei unter

htdocs/foo/eggs/.htpasswd

eggswas 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 htpasswdDatei 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 hwpasswdDatei zu finden. Wie kann ich das tun?

verwandte Informationen