Um im schlanken Webserver Lighty eine HTTP Authentifizierung für bestimmte Verzeichnisse zu erzeugen, ist es notwendig, in der /etc/lighttpd/lighttpd.conf das Server-Modul mod_access und mod_auth zu aktivieren.
server.modules = ( "mod_access", "mod_auth", "mod_alias", "mod_accesslog", "mod_compress", "mod_cgi", "mod_fastcgi", "mod_rewrite", "mod_magnet", "mod_redirect", "mod_status", )
Um ein Verzeichnis unterhalb eines bestehenden Webroots nun mit einer Authentifizierung zu schützen, tragen wir das in der /etc/lighttpd/vhosts.conf ein.
$HTTP["host"] =~ "(^|\.)domain\.tld$" { server.document-root = "/home/user/pages/" auth.backend = "htpasswd" auth.backend.htpasswd.userfile = "/home/user/passwd.txt" auth.require = ("/" => ( "method" => "basic", "realm" => "admin", "require" => "valid-user" ) ) }
Zu guter Letzt benötigen wir noch die /home/user/passwd.txt die die betreffenden Authentifizierungsinfos bereit hält.
user:basic_encoded_password
Fortan ist der Ordner /home/user/pages/ passwortgeschützt.
Möchte man einen Unterordner passwortschützen, trägt man diesen statt des Slashes ein:
auth.require = ("/subdir/" => ( "method" => "basic", "realm" => "admin", "require" => "valid-user" ) )