Kategorien

Suchen


Aktuelle Artikel

Archiv


« | Startseite | »

.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 »

3 Antworten auf “.htaccess: Zugriff auf ein Unterverzeichnis erlauben”

  1. WordPress: Schutz des Administrationsbereiches (wp-admin) | YourHelpCenter.de meint:
    10.03.2010 um 17:19

    [...] .htaccess: Zugriff auf ein Unterverzeichnis erlauben [...]

  2. Florian meint:
    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.

  3. Jockel meint:
    29.08.2010 um 10:26

    Hallo Florian.

    Ja, Ausnahmen können definiert werden. Ein Beispiel (in der .htaccess):

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    
    #.htaccess
    AuthType Basic
    AuthName "Secure"
    AuthUserFile /home/hiroyuki_sakai/public_html/x/.htpasswd
    <Files *.*>
    require valid-user
    </Files>
    <Files index.php>
    satisfy any
    </Files>
    <Files .htaccess>
    order allow,deny
    deny from all
    </Files>

    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 ;)

Kommentare