Negierung für Apache's Locations

Authentifizierung für alles bis auf ein Verzeichnis (oder auch Datei)

Apache erlaubt es über die "Location" Direktive für ein Teil (oder auch die ganze) der Webseite eine Authentifizierung zu definieren.
Hier ein kleines Beispiel Tutorial!

Heute brauchte ich aber eine Möglichkeit, alle Inhalte bis auf eine zu schützen. Mit den Apache-"standard regular expression" ist es sehr kompliziert. Aber mit der "Perl compatible regular expressions" war es recht einfach möglich.

<Location ~ "^/(?!path/that/doesnt/need/auth)">
AuthUserFile /home/apache/.htpasswd
AuthName "Restricted Area"
AuthType Basic
require valid-user
</Location>
  • ~ sagt dem Apache, dass wir extended regular expression nutzen wollen.
  • ^ steht für den Anfang der Zeile.
  • ?! initialisiert die Negierung

So wird für jeden Pfad der nicht in die Negierung fällt, der BasicAuth angezeigt!

Neuen Kommentar hinzufügen

Sie können einen Kommentar abgeben, indem Sie das unten stehende Formular ausfüllen. Nur Text. Web- und E-Mail-Adressen werden in anklickbare Links umgewandelt.