« WordPress: Besucher protokollieren und auswerten | Startseite | PHP: Zufallszeichenkette erzeugen (random string) »
.htaccess: Zugriff auf ein Unterverzeichnis erlauben
Jockel | 07.03.2010
Es gibt Fälle, da möchte man ein Verzeichnis per .htaccess schützen – trotzdem aber den Zugriff auf ein Unterverzeichnis des geschützten Verzeichnisses wieder erlauben.
Praxis-Beispiel:
Um Ihre WordPress Installation zusätzlich zu sichern, sperren Sie das /wp-admin Verzeichnis durch eine .htaccess / .htpasswd Kombination. Dadurch werden aber andere Logins (z.Bsp. von normalen Benutzern auf der Webseite) auch blockiert, da bei die Loginmaske Dateien aus dem /wp-admin/css und /wp-admin/images Verzeichnis abruft.
Lösung:
Erstellen (der belassen) Sie den Schutz wie in unserem Artikel “WordPress: Schutz des Administrationsbereiches (wp-admin)/” beschrieben für den /wp-admin/ Ordner.
Erstellen Sie zusätzlich in den beiden Unterordnern “css” und “images” eine weitere .htaccess Datei mit diesem Inhalt:
Order Deny,Allow Allow from all Satisfy any
Nun werden Sie beim Zugriff auf “www.domain.de/wp-admin” nach Ihren Zugangsdaten gefragt. Möchte sich ein Benutzer jedoch normal über die Loginmaske anmelden, sieht er das bekannte Formular und wird nicht eingeschränkt.
Kategorie: Allgemeines, Anleitungen, Sicherheit, WordPress | 3 Kommentare »
10.03.2010 um 17:19
[...] .htaccess: Zugriff auf ein Unterverzeichnis erlauben [...]
29.08.2010 um 10:02
Eine Frage: Könnte ich auch eine Ausnahme für nur eine bestimmte Datei im .htacces-geschützten Verzeichnis definieren? Dies ist wichtig für Schnittstellen, die von Clients genutzt werden müssen, die die .htaccess-Authentification nicht beherrschen.
29.08.2010 um 10:26
Hallo Florian.
Ja, Ausnahmen können definiert werden. Ein Beispiel (in der .htaccess):
In diesem Beispiel würde die “index.php” von dem Schutz ausgenommen und könnte normal abgerufen werden. Wenn Du hier das Schnittstellen-Script (php o.ä.) einträgst, dann kann mit diesem Script ohne Passwortabfrage kommuniziert werden.
Aber Achtung:
Wenn Du in der Schnittstelle eine andere Datei auf die Weise einbindest, dass der Client diese Datei laden muss, dann hast Du ggf. einen weiteren Zugriff auf das geschützte Verzeichnis. Ein Beispiel dafür sind CSS Dateien: Dein Script gibt eine Meldung aus, für deren Darstellung der Client eine CSS Datei nachladen muss. Wenn diese nun in dem geschützten Verzeichnis liegt, kommt es daher natürlich zur Passwortabfrage. Es ist ein beliebter Fehler