4.9. htaccess

Das Verhalten des Apache Webservers lässt sich durch .htaccess-Dateien im Verzeichnis einer Domain steuern. Die zentrale Konfiguration lässt sich damit für einzelne Verzeichnisse überschreiben. Eine .htaccess-Datei wirkt sich auf das Verzeichnis aus, in dem sie sich befindet, und auf alle Unterverzeichnisse. Konfigurationen, die es ermöglichen, dass der Webserver Rechte anderer User erhalten kann, sind dabei nicht erlaubt.

4.9.1. Bereiche einer Website mit Passwort schützen

Ein typischer Anwendungsfall ist der Schutz eines bestimmten Verzeichnisses mit einem Passwort. Dazu muss zunächst eine Passwort-Datei mit dem Namen .htpasswd im etc-Verzeichnis der Domain angelegt werden. Dies erfolgt mit dem Programm htpasswd.

xyz00-doms@h97:~$ cd ~/doms/hs-example.de/etc
xyz00-doms@h97:~$ htpasswd -c .htpasswd peter
New password: *****
Re-type new password: *****
xyz00-doms@h97:~$

Statt der Sternchen geben Sie das gewünschte Passwort ein. Es wird verschlüsselt gespeichert. Die Option -c wird nur bei der ersten Anlage der Passwort-Datei gesetzt. Wenn ein Passwort für einen zweiten Benutzer eingerichtet wird, muss htpasswd ohne die Option aufgerufen werden, da sonst die Datei komplett überschrieben würde und das Passwort für den ersten Benutzer verloren ginge.

xyz00-doms@h97:~$ cd ~/doms/hs-example.de/etc
xyz00-doms@h97:~$ htpasswd .htpasswd paula
New password: *****
Re-type new password: *****
xyz00-doms@h97:~$

Diese Passwort-Datei kann nun für beliebige Verzeichnisse der Domain genutzt werden. Um ein Verzeichnis mit einem Passwort zu schützen, legen Sie dazu einfach eine htaccess-Datei mit folgendem Inhalt in dem betreffenden Verzeichnis an.

order allow,deny
allow from all
require valid-user
Authname "Privater Bereich. Bitte melden Sie sich an."
Authtype Basic
AuthUserFile /home/doms/hs-example.de/etc/.htpasswd

Beim Aufruf des Bereichs im Webbrowser wird der Besucher aufgefordert, den Benutzernamen (in unserem Beispiel peter oder paula) sowie das jeweilige Passwort einzugeben.

4.9.2. Weiterleitungen (Redirects)

Ein anderer typischer Anwendungsfall sind Redirects. Weiterleitungen werden benötigt, wenn alte Inhalte verschoben werden, sodass sie unter einer neuen Webadresse erreichbar sind. Weiterleitungen verhindern, dass Links, die von anderen Webseiten auf den verschobenen Inhalt gesetzt wurden, ins Leere gehen. Dazu können Sie eine htaccess-Datei im obersten Verzeichnis anlegen, in dem Sie alle Weiterleitungen aufführen.

Redirect permanent /alte-url-1/ /neue-url-1/
Redirect permanent /alte-url-2/ /neue-url-2/
Redirect permanent /alte-url-3/ /neue-url-3/

4.9.3. Eigene 404-Datei festlegen

Wenn ein Benutzer auf Ihrer Website eine ungültige Webadresse aufruft, zeigt der Browser eine 404-Meldung an. Sie können diese Standardanzeige anpassen, indem Sie den Webserver anweisen, bei einem 404-Fehler eine besondere Webseite anzuzeigen.

ErrorDocument 403 /404.html

Weitere Möglichkeiten, das Verhalten des Webservers über htaccess-Dateien zu steuern, finden Sie in der Apache-Dokumentation. Eine deutschsprachige Anleitung und Beispielkonfigurationen finden Sie unter: https://wiki.selfhtml.org/wiki/Webserver/htaccess

Hostsharing einen Monat lang kostenlos und unverbindlich testen

Nutzen Sie unser kostenloses Test- und Beratungsangebot.
Nehmen Sie jetzt Kontakt auf und lernen Sie den Hostsharing-Service kennen.

Jetzt Testsystem bestellen Mehr erfahren