Support » Allgemeine Fragen » WordPress-Pfad verändert – Login nicht mehr möglich

Ansicht von 15 Antworten - 1 bis 15 (von insgesamt 15)
  • Nachtrag: Problem gelöst.

    Diese sehr gut beschriebene Lösung funktionierte doch: https://de.wordpress.org/support/topic/url-geaendert-kann-mich-nicht-mehr-einloggen/.

    Mein Fehler war, dass ich nach der Anpassung das Verzeichnis wp-admin versucht habe zu öffnen, anstatt der wp-login.php.

    Danke!

    Moderator Bego Mario Garde

    (@pixolin)

    Hallo,

    ich freue mich, wenn du in den Threads hier im Support-Forum eine für dich passende Lösung gefunden hast.

    /wp-admin ist das Verzeichnis mit den Dateien, die das WordPress-Backend darstellen. Wie du sicher weißt, kannst du auf das Backend nur zugreifen, wenn du angemeldet bist. Rufst du die Adresse https://example.com/wp-admin (natürlich mit deiner Domain) auf und bist nicht angemeldet (es ist also im Browser kein gültiges Anmelde-Cookie vorhanden), wirst du normalerweise automatisch auf das Anmeldeformular weitergeleitet. Damit du aber selbst dann noch das Anmeldeformular aufrufen kannst, wenn irgendwas falsch eingestellt ist, ist es eigentlich besser, für die Anmeldung direkt http://example.com/wp-login.php (auch wieder mit deiner Domain) aufzurufen.

    Im Moment liegt deine Website in einem Unterverzeichnis wordpress. Dadurch „verschieben“ sich auch die Pfade zum Backend und Anmeldeformular. Du erreichst das Anmeldeformular dann sinngemäß unter http://example.com/wordpress/wp-login.php und das Backend nach der Anmeldung unter https://example.com/wordpress/wp-admin.

    Möchtest du irgendwann einmal, dass deine Website direkt (ohne Eingabe des Unterverzeichnisses) aufrufbar ist, musst du ein paar kleine Anpassungen vornehmen:

    1. Du erstellst ein Backup deiner WordPress-Installation einschließlich Datenbank-Backup.
    2. Du kopierst die Datei index.php in das Web-Stammverzeichnis, bearbeitest sie mit einem geeigneten Code-Editor (z.B. mit dem kostenlos für alle Betriebssysteme erhältlichen Programm VS Code) und änderst den Pfad in der letzten Zeile ab:
      * wp-blog-header.php which does and tells WordPress to load the theme.
      require __DIR__ . '/wordpress/wp-blog-header.php';
    3. Du verschiebst die Datei wp-config.php in das Web-Stammverzeichnis.
    4. Du meldest dich wie bisher über https://example.com/wordpress/wp-admin im Backend deiner WordPress-Installation an und änderst unter Einstellungen > Allgemein die Website-URL auf https://example.com, während die WordPress-URL unverändert auf https://example,com lauten soll.
    5. Unter Einstellungen > Permalinks solltest du die gewünschte URL-Struktur nochmal speichern und darauf achten, ob du aufgefordert wirst, die Datei .htaccess im Web-Stammverzeichnis manuell anzulegen.

    Im Ergebnis ist deine Website unter https://example.com erreichbar, das Anmeldeformular liegt aber weiterhin unter https://example.com/wordpress/wp-login.php.

    (Ich benutze hier im Support-Forum immer die URL https://example.com/, damit die Antwort für möglichst viele Teilnehmende nachvollziehbar ist. Dadurch vermeide ich auch, deine URL mehrfach zu verwenden – einige Teilnehmende sind da empfindlich und haben das nicht so gern.)

    Hallo Bego,

    wow, erst einmal vielen Dank für den Einsatz und die gute Anleitung! Die konnte ich sehr gut nachvollziehen und habe versucht, es entsprechend umzusetzen. Leider ohne Erfolg.

    Möglicherweise ist mein Fehler eine fehlerhafte Kombination aus FTP-Verzeichnisstruktur und Settings beim Provider? Vielleicht können wir es noch einmal konkretisieren, wenn ich es präziser beschreibe?

    Die Ordnerstruktur auf dem FTP ist (Domain-Name ersetzt durch „example“):

    – error_docs
    – htdocs (leer)
    – httpdocs (leer)
    – logs
    – example.de -> wordpress (WP-Installation um die es geht)

    Beim Provider ist als Startverzeichnis definiert:

    /example

    Setze ich index und wp-config in den Ordner example.de funktioniert es nicht.

    Setze ich index und wp-config in den Ordner htdocs, fragt WP beim Aufruf von wp-admin nach den Datenbank-Informationen.

    Über weitere Hilfestellung würde ich mich sehr freuen! Wenn ich Screenshots und/oder weitere Infos anliefern soll, ist das natürlich kein Problem.

    Danke & beste Grüße!

    Moderator Bego Mario Garde

    (@pixolin)

    Es gibt keine festen Vorgaben, wie ein Systemadministrator das Web-Stammverzeichnis benennen muss. Auf Ubuntu-Servern ist das z.B. /var/www, bestimmte Webanwendungen werden unter /usr/share installiert, häufig wird auch htdocs (oder httpdocs) verwendet oder (wie in deinem Fall) der Domainname, der bei Vertragsabschluss registriert wurde.

    Unabhängig davon hast du bei den meisten Webhostern ein eigenes Menü zur Domain-Verwaltung, bei dem eingestellt wird, in welchem Verzeichnis die Webserver-Software nach Dateien suchen soll, wenn eine Webseite zu dieser Domain abgerufen wird. Du kannst also auch ein Verzeichnis klimbim erstellen und angeben, dass dieses Verzeichnis dein Web-Stammverzeichnis ist. Was tatsächlich bereits eingestellt ist, sollte sich ebenfalls über die Domainverwaltung herausfinden lassen.

    Bei meiner Beschreibung war ich davon ausgegangen, das am Ende die abgeänderte index.php mit dem Pfad zu den WordPress-Dateien, die .htacess und die wp-config.php in diesem zugewiesenen Web-Stammverzeichnis liegen und die WordPress-Dateien in einem Unterverzeichnis wordpress. Also wahrscheinlich

    – error_docs
    – htdocs (leer)
    – httpdocs (leer)
    – logs
    – example.de
      |_ index.php
      |_ .htaccess
      |_ wp-config.php
      |_ wordpress
         |_ index.php
         |_ wp-login.php
         |_ ...
         |_ wp-admin
         |_ wp-includes
         |_ wp-content
    
    fbien

    (@fbien)

    Danke für dein Feedback.

    In der Domainverwaltung des Anbieters ist „/example.de“ als Stammverzeichnis definiert. Siehe Screenshot.

    In dieses Verzeichnis habe ich auch die index.php gelegt und dort abgeändert.

    Danach habe ich die wp-config.php dorthin verschoben (hier ein Screenshot vom FTP-Verzeichnis).

    Danach den Website-Pfad in den WP-Einstellungen (allgemein) auf example.de angepasst, während WordPress-Pfad bei example.com/wordpress blieb.

    Leider funktioniert es so nicht. Wenn ich im Browser example.de aufrufe, werde ich auf example.de/de geleitet (warum passiert das?) und mir wird eine 404-Seite (Page not found) gezeigt. Allerdings habe ich keine htacess. Liegt es möglicherweise daran?

    Damit ich wieder auf Ausgangsposition bin, habe ich erst einmal alle Änderungen wieder rückgängig gemacht.

    Kann man ja nicht oft genug sagen: Vielen Dank für den Einsatz und die super Hilfe hier!

    • Diese Antwort wurde geändert vor 1 Woche von fbien.
    • Diese Antwort wurde geändert vor 1 Woche von fbien.
    • Diese Antwort wurde geändert vor 1 Woche von fbien.
    • Diese Antwort wurde geändert vor 1 Woche von fbien.
    Moderator Bego Mario Garde

    (@pixolin)

    Was steht denn in der .htaccess im Web-Stammverzeichnis?

    Du kannst dich unter /wordpress/wp-login.php im Backend anmelden – was wird unter Einstellungen > Allgemein in den URL-Feldern angezeigt. (Nach meiner Abfrage steht das beides noch auch https://example.com/wordpress.

    fbien

    (@fbien)

    Es liegt gar keine .htaccess im Stammverzeichnis. Oben habe ich einen Screenshot des Verzeichnis verlinkt. Mehr ist im Verzeichnis nicht enthalten.

    Genau, jetzt gerade stehen unter Einstellungen > Allgemein beide URL-Felder wieder auf example.de/wordpress – weil ich alles wieder auf Ausgangsposition zurückgebracht habe. Als ich nach deiner Anleitung vorgegangen bin, habe ich aber die Website-Adresse wie beschrieben auf example.de gesetzt.

    Moderator Bego Mario Garde

    (@pixolin)

    Es liegt gar keine .htaccess im Stammverzeichnis. Oben habe ich einen Screenshot des Verzeichnis verlinkt. Mehr ist im Verzeichnis nicht enthalten.

    Naja, deshalb hatte ich ja ausdrücklich nochmal nachgefragt.
    Ich dachte, ein subtiler (ahem) Hinweis wäre besser? 😉

    Spaß beiseite – lies doch bitte nochmal nach, was ich zur .htaccess geschrieben hatte.

    Genau, jetzt gerade stehen unter Einstellungen > Allgemein beide URL-Felder wieder auf example.de/wordpress – weil ich alles wieder auf Ausgangsposition zurückgebracht habe.

    Ich kann so nicht arbeiten!
    … 

    😀

    Setz mal die Website-URL auf example.de. Und die .htaccess nicht vergessen.

    Und nicht immer wieder alles rückgängig machen. 😛

    Moderator Bego Mario Garde

    (@pixolin)

    Prüf bei der Gelegenheit bitte auch mal, was bei Einstellungen > Permalinks eingetragen ist. Du möchtest wahrscheinlich „Beitragsname“.

    Ein Übersetzung-Plugin (z.B. Polylang) ist nicht installiert?

    fbien

    (@fbien)

    😀 …danke für dich Geduld!

    Ich habe jetzt noch einmal alles genauso umgesetzt wie in deiner ersten Antwort beschrieben.

    Ich habe auch die Settings der Permalinks noch einmal neu gespeichert. Es gibt aber weiterhin keine

    .htaccess

    . WordPress hat mich auch nicht aufgefordert, manuell eine anzulegen – sondern einfach mit „Permalink-Struktur aktualisiert“ bestätigt. Ich ducke mich schonmal weg… 😉

    Die Permalinks-Einstellung steht auf „Beitragsname“ und ein Übersetzungs-Plugin habe ich nicht installiert.

    …und jetzt mache ich auch nichts rückgängig 😉

    Moderator Bego Mario Garde

    (@pixolin)

    Da ist irgendwo eine Weiterleitung eingetragen, die von der Domain auf das Verzeichnis /de weiterleitet. Schau mal, ob du im Kundenmenü etwas findest.

    Die .htaccess kannst du auch manuell erstellen und im Web-Stammverzeichnis ablegen:

    # BEGIN WordPress
    # Die Anweisungen (Zeilen) zwischen „BEGIN WordPress“ und „END WordPress“ sind
    # dynamisch generiert und sollten nur über WordPress-Filter geändert werden.
    # Alle Änderungen an den Anweisungen zwischen diesen Markierungen werden überschrieben.
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress

    Welche Plugins verwendest du denn?
    (Bevor du das abtippst: Werkezuge > Website-Zustand > Bericht > Button anklicken, dann hier neue Anwort schreiben und Bericht aus der Zwischenablage einfügen.)

    • Diese Antwort wurde geändert vor 1 Woche von Bego Mario Garde. Grund: Nachtrag
    Moderator Bego Mario Garde

    (@pixolin)

    Beide URLs ohne /wordpress ist schlecht. 😛

    fbien

    (@fbien)

    …sorry, das war eine Anweisung vom Webhosting-Support, mit dem ich parallel schnell noch einmal gesprochen habe.

    Scheinbar gab es für den hier beschriebenen Weg tatsächlich Hürden durch Beschränkungen des Hosters. Mit der Anleitung u. Support des Hosters hat es nun geklappt.

    Ich möchte mich aber vielmals für den sauguten Support hier bedanken und nehme gern Adressen für Präsentkorb-Zustellung entgegen – vielen, vielen Dank! 🙂

    Moderator Bego Mario Garde

    (@pixolin)

    Na, geht doch.

    Jetzt änderst du noch die Links im Navigationsmenü:
    Statt #unterricht verwendest du die komplette URL https://example.com/#unterricht (Gilt auch sinngemäß für die anderen Links im Navigationsmenü.)

    Warum? Weil die Links sonst auf der Seite Impressum nicht funktionieren.

    fbien

    (@fbien)

    Yes! Mach‘ ich direkt, wenn ich fertig bin mit Feiern 😉

    Schönen Abend!

    • Diese Antwort wurde geändert vor 1 Woche von fbien.
Ansicht von 15 Antworten - 1 bis 15 (von insgesamt 15)