| | |
| | | htaccess |
| | | ======== |
| | | |
| | | .. todo:: Beispiele aus dem Wiki übernehmen? |
| | | Das Verhalten des Apache Webservers lässt sich durch :file:`.htaccess`-Dateien im Verzeichnis einer Domain steuern. |
| | | Die zentrale Konfiguration lässt sich damit für einzelne Verzeichnisse überschreiben. |
| | | Eine :file:`.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. |
| | | |
| | | Konfigurationen, die es ermöglichen, dass der Webserver Rechte anderer User erhalten kann, sind nicht erlaubt. |
| | | Dies betrifft folgende Funktionen: |
| | | Bereiche einer Website mit Passwort schützen |
| | | ============================================ |
| | | |
| | | +-----------------------+ |
| | | | Funktion | |
| | | +=======================+ |
| | | | Options FollowSymlink | |
| | | +-----------------------+ |
| | | | Options +Index | |
| | | +-----------------------+ |
| | | | Options -Index | |
| | | +-----------------------+ |
| | | Ein typischer Anwendungsfall ist der Schutz eines bestimmten Verzeichnisses mit einem Passwort. |
| | | Dazu muss zunächst eine Passwort-Datei mit dem Namen :file:`.htpasswd` im :file:`etc`-Verzeichnis der Domain angelegt werden. |
| | | Dies erfolgt mit dem Programm :command:`htpasswd`. |
| | | |
| | | .. todo:: Wenn das so stehen bleibt, sollte ergänzt werden, dass die Option "-Index" pro Domain als Domainoption gesetzt werden kann. Statt "FollowSymlink" ist das gefahrlose "+SymLinksIfOwnerMatch" gesetzt. Dadurch werden durch den Webserver nur Symlinks auf die eigenen Dateien des Nutzers verfolgt. |
| | | .. code-block:: console |
| | | |
| | | 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 :command:`htpasswd` ohne die Option aufgerufen werden, da sonst die Datei komplett überschrieben würde und das Passwort für den ersten Benutzer verloren ginge. |
| | | |
| | | .. code-block:: console |
| | | |
| | | 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 :file:`htaccess`-Datei mit folgendem Inhalt in dem betreffenden Verzeichnis an. |
| | | |
| | | .. code-block:: text |
| | | |
| | | 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. |
| | | |
| | | 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 :file:`htaccess`-Datei im obersten Verzeichnis anlegen, in dem Sie alle Weiterleitungen aufführen. |
| | | |
| | | .. code-block:: text |
| | | |
| | | Redirect permanent /alte-url-1/ /neue-url-1/ |
| | | Redirect permanent /alte-url-2/ /neue-url-2/ |
| | | Redirect permanent /alte-url-3/ /neue-url-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. |
| | | |
| | | .. code-block:: text |
| | | |
| | | ErrorDocument 403 /404.html |
| | | |
| | | Weitere Möglichkeiten, das Verhalten des Webservers über :file:`htaccess`-Dateien zu steuern, finden Sie in der Apache-Dokumentation_. |
| | | |
| | | .. _Apache-Dokumentation: https://httpd.apache.org/docs/2.4/ |