Inhalt
Was genau ist eine htaccess-Datei?
Bei der htaccess-Datei handelt es sich um eine textuelle Datei, durch deren Einsatz Webmaster und Webseitenbetreiber die Konfiguration eines Webservers auf Basis der NCSA-Technologie beeinflussen können. Der bekannteste NCSA-Webserver ist der weitverbreitete und äußerst beliebte Apache-Http-Server. Seine Funktionsweise wird durch eine oder mehrere Konfigurationsdateien gesteuert, die sogenannte „httpd.conf„. Bei dieser handelt es sich um eine übergeordnete Konfigurationsdatei, die im Normalfall innerhalb des Verzeichnisses des Http-Servers gespeichert ist und ausschließlich vom Server-Administrator definiert wird.
In dieser Konfigurationsdatei legt der Server-Admin u.a. fest, ob ein Nutzer des Webservers die Berechtigung erhält, die Konfiguration des Http-Servers mithilfe der htaccess-Datei zu beeinflussen. Falls dieser berechtigt ist, dann kann er für jedes gewünschte Verzeichnis eine eigene htaccess-Datei anlegen und konfigurieren.
Der Apache-Webserver scannt bei jedem Seitenzugriff alle relevanten Verzeichnisse, ohne dabei die Informationen zwischenzuspeichern. Aus diesem Grund sind alle Einstellungen, die durch die htaccess-Dabei vorgenommen wurden, ab dem Moment gültig, in dem die Konfigurationsdatei in dem jeweiligen Verzeichnis abgelegt wird. Ein Serverneustart ist dabei nicht nötig. Bei der Bearbeitung der htaccess-Datei sollten Sie unbedingt auf eine korrekte Schreibweise achten, denn falsch geschriebene Anweisungen können eventuell den Seitenzugriff auf dem kompletten Server verhindern. Wenn Sie die Konfigurationsdatei jedoch sachgemäß bearbeiten, erhalten Sie einige nützliche und hilfreiche Funktionen und Features zur Verwaltung des Http-Servers. Da sich solche Konfigurationen schnell und einfach umsetzen und in die bestehende Systemstruktur einbinden lassen, werden sie auch oft als sogenannte „htaccess-Hacks“ bezeichnet.
Wie kann man eine htaccess-Datei erstellen?
Wofür verwendet man die htaccess-Datei?
Vom Server-Admin befugte Benutzer haben durch die htaccess-Dateien die Option, schnell und ohne großen Aufwand die Konfiguration des Webservers zu beeinflussen. Sie können auf diese Weise zum Beispiel ganze Verzeichnisse oder auch einzelne Dateien durch Http-Authentifizierung vor unerlaubten Zugriffen schützen. Darüber hinaus können Sie auch eigene Fehlerseiten oder Weiterleitungen implementieren. Die nützlichsten Einsatzmöglichkeiten stellen wir Ihnen im folgenden Abschnitt vor:
-
Alternative Fehlerseiten
Wenn es beim Zugriff auf die Website zu einem Fehler kommt, zeigen Webserver standardmäßig eine Fehlermeldung an. Diese Fehlerseiten sind nicht besonders ansehnlich und sehr generisch. Durch den Einsatz der htaccess-Dateien haben Sie die Möglichkeit, alternative Fehlerseiten zu implementieren. So können Sie beispielsweise, falls Sie einen Webshop betreiben, bei einer Fehlermeldung auf einen vergleichbaren Artikel verweisen. Für das Implementieren eigener Fehlerseiten sind folgende Einträge in der Konfigurationsdatei nötig:
// # Lokaler Speicherort der eigenen Fehlermeldung
// ErrorDocument 404 /verzeichnispfad/404.html -
Weiterleitungen
Ein beliebter Einsatzbereich der Konfigurationsdateien sind die Weiterleitungen bzw. Redirects. Sie können beispielsweise auf einzelne Seiten innerhalb einer Website umleiten oder auch Anfragen auf eine andere Domain weiterleiten. Dies ist insbesondere dann nützlich, wenn die Website auf eine neue Domain umzieht. Mit dem folgenden Eintrag in die Konfigurationsdatei sorgen Sie dafür, dass alle Anfragen an die ursprüngliche Website vom Webserver automatisch auf die neue Domain weitergeleitet werden:
# Eine einfache Weiterleitung
Redirect / http://www.neue-domain.de/ - Bereiche mit Passwortschutz einrichten
Falls Sie keine komplizierten Login-Skripte mit PHP implementieren möchten aber dennoch einen geschützten Bereich auf Ihrem Webserver benötigen, können Sie sich stattdessen der htaccess-Datei bedienen. Um diese Art des Passwortschutzes zu realisieren, ist zunächst eine zweite Datei mit dem Namen .htpasswd nötig. In dieser werden die jeweiligen Passwörter gespeichert. Da in Unix-Systemen ausschließlich verschlüsselte Passwörter eingetragen werden können, können Sie auf verschiedene .htpasswd-Generatoren zurückgreifen, die als kostenloser Download im Word Wide Web angeboten werden. Die geschützten Verzeichnisse können Sie folgendermaßen implementieren: # Passwortschutz mit .htaccessAuthType Basic, AuthName „Passwortgeschützter Bereich“, AuthUserFile //.htpasswd, AuthPGAuthoritative Off, require user User1 User2 User3 - IP-Adressen blockieren
Sie haben die Möglichkeit, einzelnen IP-Adressen oder gesamten IP-Blöcken den Zugriff auf Ihre Website zuverwehren. Mit den richtigen Einträgen in die htaccess-Datei können Sie sogar alle IP-Adressen vom Zugang ausschließen und nur ganz bestimmten IP-Adressen Zugriff gewähren. Damit können Sie beispielsweise Ihr Web-Angebot nur den Mitarbeitern im unternehmenseigenen Intranet bereitstellen. Einige der möglichen Zugriffsbeschränkungen werden im folgenden Befehl zusammengefasst:
- # Datei zum Regeln von IP-Bereichen
- Order deny,allow
- Deny from .google.com
- Deny from 198.178
- Allow from 156.168.230.105