Problem: Permalinks und Passwort für wp-admin

  • Ich habe WP 2.3.2 installiert und folgendes Problem:

    Wenn ich den Ordner wp-admin mit einem Passwort versehe, dann funktionieren die Permalinks nicht mehr. Wenn ich diesen Schutz aufhebe, dann erscheint der 404-Fehler, wenn ich den Ordner wp-admin aufrufe.

    Die .htaccess-Datei im Verzeichnis wp-admin sieht so aus:

    AuthUserFile "/meinverzeichnis/.htpasswds/html/wp-admin/passwd"
    AuthType Basic
    AuthName "name"
    require valid-user

    Außerdem gibt es auch eine .htaccess-Datei im obersten Verzeichnis der WP-Installation. Diese lautet wie folgt:

    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>

    # END WordPress

    Meine Frage: Wie kann ich den Ordner wp-admin mit einem Passwort versehen und trotzdem funktionierende Permalinks haben?

    Permalinks werden bei mir nach folgender Struktur gebaut:
    /%year%/%monthnum%/%day%/%postname%/

    (Habe gelesen, dass man index.php einbinden kann. Das würde ich gerne vermeiden, falls möglich.)

    Freue mich über jeden Tipp!

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Zitat

    Wenn ich den Ordner wp-admin mit einem Passwort versehe, dann funktionieren die Permalinks nicht mehr. Wenn ich diesen Schutz aufhebe, dann erscheint der 404-Fehler, wenn ich den Ordner wp-admin aufrufe.


    Wie (und wo) rufst Du denn den Ordner wp-admin auf?
    Gibst Du in die Adressleiste http://www.domainname.de/wp-admin ein?
    Wenn ja, dann sieht es so aus als würde er die index-Datei nicht finden.
    In meiner .htaccess-Datei steht noch der folgende Befehl (ganz oben):
    AddType application/x-httpd-php5 .php .php5

    Und welche Permalinks funktionieren nicht mehr?
    Haben die Permalinks denn irgendwann vorher mal funktioniert?
    Oder hast Du jetzt erst die Umstellung auf die Permalinks vorgenommen?

    Bei welchem Provider bist Du?
    In dem Zusammenhang:
    Hast Du die Möglichkeit auf die Datei mod_rewrite zu zugreifen?

    Zitat

    (Habe gelesen, dass man index.php einbinden kann. Das würde ich gerne vermeiden, falls möglich.)


    Was meinst Du damit?

    VG Elke

    Es gibt keine dummen Fragen, es gibt nur dumme Antworten...
    http://u-portal.de/

  • Hallo Elke,

    ich rufe wp-admin über den Browser auf und dann kommt der 404-Fehler. Per ftp kann ich auf den Ordner noch zugreifen.

    Und es funktionieren alle Permalinks nicht mehr, also Links zu statischen Seiten und Links zu einzelnen Postings. Die Permalinks haben alle vorher einwandfrei funktioniert und sie tun es auch, wenn ich den Passwortschutz von wp-admin aufhebe.

    Auf mod_rewrite kann ich leider nicht zugreifen...

  • Genau. Das meinte ich mit der index.php in der Permalink-Struktur. Aber wenn ich das alles richtig verstehe, dann funktioniert mod_rewrite bei mir grundsätzlich... Noch jemand eine Idee, woran es liegen könnte bzw. was ich ändern muss?

  • Kommentiere oder lösche mal die folgenden Zeilen in Deiner .htaccess.

    Zitat

    AuthUserFile "/meinverzeichnis/.htpasswds/html/wp-admin/passwd"
    AuthType Basic
    AuthName "name"
    require valid-user

    VG Elke

    Es gibt keine dummen Fragen, es gibt nur dumme Antworten...
    http://u-portal.de/

  • Hallo Elke, habe wie vorgeschlagen die Angaben aus der .htaccess-Datei im Ordner wp-admin gelöscht. Nun kann ich mich wieder über den Browser ins Backend einloggen, dafür ist das Verzeichnis aber auch nicht mehr geschützt (es wird kein Benutzername und kein Kennwort abgefragt, wenn man http://www.meinedomain.de/wp-admin aufruft -> außer den normalen WP-Zugangsdaten natürlich). Ich habe das Gefühl, dass sich die zwei .htaccess-Dateien (die WP-Datei im obersten Verzeichnis und die zweite .htaccess im wp-admin-Ordner) behindern. Hast Du noch eine Idee?

  • Existierte eigentlich die Datei:
    /meinverzeichnis/.htpasswds/html/wp-admin/passwd
    Wenn nicht, dann musst Du die natürlich anlegen. Achte bitte auch darauf, dass die Endung, die selbe ist. In Deiner .htaccess-Datei ist keine Erweiterung genannt. Ist das so korrekt?
    Wenn die Datei nicht existiert bzw. der Name in der .htaccess verkehrt war, dann kannst Du ja noch einmal mit dem gelöschten Code versuchen.
    Vielleicht klappt es ja dann.

    Ach ja, was mir gerade auffällt: ist das Verzeichnis korrekt? Müsste es nicht heißen:
    .htpasswds oder
    http://www.meinedomain.de/meinverzeichni…dmin/.htpasswds
    Aber ehrlich gestanden tappe ich im Dunkeln.

    VG Elke

    Es gibt keine dummen Fragen, es gibt nur dumme Antworten...
    http://u-portal.de/

  • Die Pfade sind wohl alle korrekt. Ich richte den Passwortschutz mit der serverseitig installierten Software "Control Panel" ein. Die Password-Datei wird dann automatisch in ein Password-Verzeichnis gespeichert, welches sich nicht im Web-Verzeichnis befindet - was aus Sicherheitsgründen wohl auch Sinn macht. Der Pfad zu dieser Datei in der .htaccess ist aber korrekt. Sobald ich diese .htaccess im Verzeichnis wp-admin entferne funktioniert auch alles wieder prima. Und wenn ich sie wieder anlege, dann erhalte ich den 404-Error, wenn ich im Browser das wp-admin-Verzeichnis öffne. Das bedeutet wohl, dass ich wp-admin nicht passwortschützen kann. Seltsam.

  • Zitat

    Die Pfade sind wohl alle korrekt.

    Das kann ich nicht glauben.
    Schau Dir mal die Position der Passwortdatei an.
    M. E. müsste diese am Ende, aber nicht irgendwo in der Mitte stehen.
    Um ein Verzeichnis (.htpasswds) kann es sich dabei ja nicht handeln, oder?
    Mal angenommen, die Passwortdatei heißt .htpasswds und befindet sich in einem neuen Verzeichnis passwd, das sich im Verzeichnis wp-admin befindet, dann muss der String so aussehen:
    http://www.meinedomain.de/html/wp-admin/passwd/.htpasswds

    PHP
    http://www.meinedomain.de/html/wp-admin/passwd/.htpasswds

    http://www.meinedomain.de/html/wp-admin/passwd/.htpasswds

    VG Elke

    Es gibt keine dummen Fragen, es gibt nur dumme Antworten...
    http://u-portal.de/

  • Elke: Auf .ht*-Dateien kann man aus gutem Grund nicht per HTTP zugreifen, sondern nur über das Dateisystem des Webservers. ;-)
    Ansonsten stimme ich dir natürlich zu, ich vermute auch eine falsche Pfadangabe. Auch wenn mir das irgendwie komisch vorkommt... eine .htaccess in wp-admin sollte eigentlich keinerlei Einfluss auf die normalen Blogaktivitäten haben. Merkwürdiges Problem...

    suche-anpasser: Erstelle doch mal die .htpasswd von Hand und lade sie per FTP hoch. Dann noch den richtigen Pfad in der .htaccess angeben und sieh mal was dann passiert.

  • hallo marX und Elke: die Pfade der .htaccess im Ordner wp-admin sind korrekt, denn wenn ich die andere .htaccess (im obersten WP-Ordner) lösche, dann ist der Ordner wp-admin passwortgeschützt. Nur funktionieren dann meine Permalinks nicht mehr. Noch eine Idee?

  • hallo marX und Elke: die Pfade der .htaccess im Ordner wp-admin sind korrekt, denn wenn ich die andere .htaccess (im obersten WP-Ordner) lösche, dann ist der Ordner wp-admin passwortgeschützt. Nur funktionieren dann meine Permalinks nicht mehr. Noch eine Idee?


    Yupp.
    Auch wenn ich keine Ahnung von den Befehlen selbst habe (ich fühle mich übrigens nicht durch marXs Äußerung beleidigt, denn sie trifft den Nagel auf den Kopf :-D) vermute ich Folgendes:
    in Deiner .htaccess-Datei im Hauptverzeichnis befindet sich ein Befehl, der auf Dein Unterverzeichnis verweist.
    Wenn dem so ist, dann würde ich den Befehl in Deiner .htaccess im Unterverzeichnis ändern und /meinverzeichnis löschen. Das Ganze müsste dann so aussehen:
    AuthUserFile "/.htpasswds/html/wp-admin/passwd"
    Allerdings ist dies nur pure Theorie, wissen weiß ich es nicht. ;-)
    Wenn das nichts hilft, dann veröffentliche bitte noch einmal Deine .htaccess, die sich im Hauptverzeichnis befindet. Vielleicht hat dann jemand anders noch eine Idee.

    VG Elke

    Es gibt keine dummen Fragen, es gibt nur dumme Antworten...
    http://u-portal.de/

  • Hallo Elke, hier noch mal meine .htaccess aus dem Hauptverzeichnis:


    So und nun die .htaccess aus dem wp-admin Ordner:

    PHP
    AuthType Basic
    AuthName "restricted"
    AuthUserFile "/home/meinverzeichnis/.htpasswds/public_html/wp-admin/passwd"
    require valid-user

    Wenn ich diese beiden .htaccess-Dateien gleichzeitig online habe, dann funktionieren die Permalinks, aber es erscheint ein 404-Error, wenn man per Browser auf wp-admin zugreifen möchte.

    Entferne ich nun die .htaccess in wp-admin, dann funktioniert alles wieder - nur ist wp-admin eben nicht mehr passwortgeschützt.

    Entferne ich hingegen die .htaccess im Hauptverzeichnis, dann ist wp-admin passwortgeschützt, aber die Permalinks funktionieren nicht mehr.

    Wer hilft mir aus diesem Teufelskreis?

    Einmal editiert, zuletzt von suche-anpasser (4. Februar 2008 um 21:28)

  • Ist das wirklich alles was in den .htaccess-Dateien steht und auch genauso? Oder hast Du dort etwas geändert? Wenn ja was?
    Gibt es noch weitere .htaccess-Dateien auf Deinem Server?
    Wenn ja, wo befinden die sich und wie sehen die aus?
    In welchen Ordnern befinden sich die von Dir bereits genannten Dateien?
    (Ich muss gestehen ich habe bereits den Überblick verloren, deswegen die Nachfrage. ;-))
    Was steht in den Feldern "WordPress-Adresse (URL):" und "Blog-Adresse (URL):" im Backend?
    Handelt es sich bei Deinem Blog-Verzeichnis um eine Subdomain?
    Wie sehen ggf. die Einstellungen Deines Servers aus?

    Gibt es ggf. einen Befehl, den man nutzen könnte, um herauszufinden, was er für eine Adresse aufruft? Oder gibt es einen Befehl mit dem man die Permalinks im Backend wieder ausschalten kann (da werden sie ja nicht gebraucht.)?

    Hast Du das Verzeichnis mal geändert, z.B. in:

    PHP
    AuthUserFile "/.htpasswds/public_html/wp-admin/passwd"
    AuthUserFile ".htpasswds/public_html/wp-admin/passwd"
    AuthUserFile "/home/.htpasswds/public_html/wp-admin/passwd"
    AuthUserFile "/public_html/wp-admin/passwd"
    AuthUserFile "public_html/wp-admin/passwd"
    AuthUserFile "/wp-admin/passwd"
    AuthUserFile "wp-admin/passwd"
    ...


    und die verschiedenen Varianten getestet? Welche Fehler spuckt er dann aus?

    Hast Du die einzelnen Zeilen der .htaccess in Deinem Hauptverzeichnis mal Stück für Stück auskommentiert und geprüft, welche Folgen das hat?

    VG Elke
    [COLOR=#000000][/COLOR]

    Es gibt keine dummen Fragen, es gibt nur dumme Antworten...
    http://u-portal.de/

  • Du kannst ja auch mal Versuchsweise mod_rewrite in der .htaccess im wp-admin-Verzeichnis ausschalten:
    [COLOR=#000000][COLOR=#0000cc]RewriteEngine Off
    [COLOR=Black]
    Gruß
    Ingo[/COLOR]
    [/COLOR][/COLOR]

    Wenn ich helfen konnte, bitte [ Gefällt mir ] klicken. :-)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!