Other

.htaccess

Allgemeines:

.htaccess-Dateien sind Server-Konfigurationsdateien für Verzeichnisse, die zu Ihrem Web-Angebot gehören.
Sie können Daten mit Passwörter schützen. Sie können automatische Weiterleitungen einstellen oder eigene Regelungen für den Fall von HTTP-Fehlermeldungen schaffen.
Sie können sogar abhängig von bestimmten Bedingungen alternative Inhalte anbieten, beispielsweise Webseiten mit unterschiedlichen Landessprachen abhängig von der Sprache des benutzten Web-Browsers - ohne CGI, ohne JavaScript. Und schließlich können Sie sogar einstellen, ob Daten komprimiert an den aufrufenden Browser übertragen werden können oder ob bei Aufrufen einzelner zu Ihrem Projekt gehörender Adressen auf eine andere URL umgeleitet werden soll.

Erlaubte Anweisungen:

Sie können in einer .htaccess-Datei genau dieselben Anweisungen notieren, die in der zentralen Konfigurationsdatei Verwendung finden - mit nur wenigen Ausnahmen.
AllowOverride None
weist Webserver an, .htaccess-Dateien zu ignorieren. Das ist im Übrigen die Voreinstellung.

AllowOverride All
legt fest, dass in einer .htaccess-Datei (so gut wie) sämtliche zentrale Vorgaben überschrieben und damit abgeändert werden dürfen. Das kann bedeuten, dass Vorhaben, die eigentlich verboten sind (beispielsweise die Ausführung von CGI-Scripts), mit Hilfe einer .htaccess-Datei erlaubt werden. Als Server-Administrator werden Sie diese Anweisung also nur sehr vorsichtig einsetzen.

AllowOverride Options
legt fest, dass in einer .htaccess-Datei Anweisungen zur Steuerung spezieller Verzeichniseigenschaften zulässig sind.

AllowOverride Limit
legt fest, dass in einer .htaccess-Datei Zugriffe von bestimmten Hosts erlaubt oder untersagt werden können.

AllowOverride Indexes
legt fest, dass in einer .htaccess-Datei Anweisungen zur Steuerung von Verzeichnisindizes zulässig sind.

AllowOverride FileInfo
legt fest, dass in einer .htaccess-Datei Anweisungen zur Akzeptanz bestimmter Dokumenttypen zulässig sind - beispielsweie, um Individuelle Fehlermeldungen ausgeben zu können.

AllowOverride AuthConfig
legt fest, dass in einer .htaccess-Datei Autorisierungsanweisungen stehen dürfen - das betrifft beispielsweise Regelungen zum Passwortschutz.
Diese Werte können auch miteinander kombiniert werden. All ist der mächtigste Parameter, mit dem alles das zugelassen wird, was die anderen Parameter steuern.

IP-Adressen, IP-Bereiche oder Namensadressen zulassen/ausschließen

IP-Adressen oder IP-Bereiche ausschließen

# Datei zum Regeln von IP-Bereichen
Order deny,allow
Deny from .aol.com
Deny from 192.168
Allow from (Die erlaubte IP Adresse)

Generelles Verbot

# Datei zum Regeln von IP-Bereichen
Deny from all
Generelles Verbot für den Zugang

.htaccess-Datei mit Passwortschutz

# .htaccess-Datei für Passwortschutz
AuthType Basic
AuthName "Geschützter Bereich - Bitte geben Sie ein Passwort ein!"
AuthUserFile /Individueller/Pfad/.htpasswd
Require valid-user

Individueller Pfad ausfindig machen

Um den Pfad ausfindig zu machen lädt mein ein .php Dokument auf den Server mit folgendem Inhalt.

<?php
echo $_SERVER['DOCUMENT_ROOT'];
?>
Die Datei sollte nach dem Gebrauch wieder vom Server gelöscht werden.

.htpasswd-Datei mit Passwortschutz

# .htpasswd-Datei für Passwortschutz
(Benutzername):(verschlüsseltes Password)

Mit diesen Daten kann man sich danach einloggen. Es wird empfohlen das Passwort mit crypt() zu verschlüsseln, da es keine Umkehrfunktion dafür gibt.
Einen .htpasswd Generator, findet Ihr hier.

Ältere Verschlüsselung kann zu Sicherheitsproblemen führen.
Marc Disch Blog Vefko