Ob man dafür extra ein Plugin braucht, ist vielleicht eine Frage des persönlichen Geschmacks. Auf jeden Fall würde ich aber vorher ein Backup von Dateien und Datenbank empfehlen.
Für einen zügigen Umzug würde ich so vorgehen:
- In WordPress anmelden. Ggf. Cache-Plugins deaktivieren. Dann WordPress- und Website-Url so anpassen, dass sie auf die Hauptdomain verweisen. Aktualisieren.
- Dateien in das Web-Stammverzeichnis verschieben. (Es gibt auch eine weitere Variante, bei der du WordPress in ein eigenes Verzeichnis verschiebst. Ich beschränke mich hier auf die einfachere Variante.)
- Nun solltest du dich über http://deinedomain.de/wp-login.php wieder anmelden können. Installiere als nächstes das Plugin Better Search Replace, aktiviere das Plugin und geh dann in Werkzeuge > Better Replace.
- Mit dem Plugin ersetzt du http://test.deinedomain.de/ durch http://deinedomain.de/ (vergiss nicht, das Häkchen bei „Testlauf“ zu entfernen, sonst passiert nicht viel).
- Zum Abschluss kontrollierst du nochmal Einstellungen > Permalinks und schaust, ob bei der Aktualisierung alles glatt läuft oder ggf. eine Fehlermeldung kommt, die
.htaccess
sei nicht beschreibbar.
Mehrere Domains für den gleichen Inhalt zu nutzen ist für SEO unkritisch, wenn du eine permanente Umleitung einrichtest. Dazu müsste eigentlich schon folgende Zeile in der .htaccess
(oberhalb des von WordPress eingefügten Blocks) reichen:
Redirect 301 / http://deinedomain.de
Wenn du die Subdomain auf eine andere Domain umziehen möchtest, sind die Arbeitsschritte grundsätzlich wie bereits beschrieben, nur dass du dann eben als Ersetzung die neue Domain einfügst.
Hatte ich erwähnt, dass Backups wichtig sind?
Vielen Dank! Ich werde Bescheid geben, ob alles funktioniert hat.
Müssen die Daten unbedingt ins Stammverzeichnis verschoben werden oder reicht es auch zu kopieren? Schließlich sollte wenigstens die Seite unter test.domain.de noch funktionsfähig bleiben.
Danke im Voraus!
Leider hat das nicht funktioniert :(. Ich habe alles befolgt (nicht direkt auf die Hauptdomain der Subdomain sondern eine andere). Zuletzt habe ich dann die Weiterleitung für diese Domain auf intern umgestellt. Wollte ich dann aber über das Backend die Seite aufrufen kam trotzdem noch die alte HTML-Seite. Auch nach löschen aller files der alten HTML Seite.. bekam ich statt der WordPress Seite die alte HTML-Seite angezeigt, obwohl im Root-Verzeichnis kein file dieser Seite mehr liegt. Auch nach Anpassung der htaccess keine Veränderung außer das dann auf einmal auch kein Login aufs Backend mehr möglich war. Bei Eingabe von „domain.de/wp-login.php“ machte er domain.dewp-login.php draus und wirft „Die Webseite ist nicht erreichbar“ Die DNS-Adresse des Servers wurde nicht gefunden. Ich verstehe nicht wieso mir diese alte HTML Seite noch angezeigt wird wenn nur noch WordPress Dateien im Verzeichnis liegen.
Ich hoffe jemand kann mir helfen.
Vielen Dank im Voraus.
Schließlich sollte wenigstens die Seite unter test.domain.de noch funktionsfähig bleiben.
Es ist immer schlecht, wenn im Nachhinein das gewünschte Ergebnis geändert wird. Hättest du das direkt gesagt, hätte ich eine andere Lösung vorgeschlagen.
Zuletzt habe ich dann die Weiterleitung für diese Domain auf intern umgestellt.
Was meinst du damit? Was bedeutet „auf intern“? Wenn die Domain bei dem Webhoster registriert wurde, bei dem auch der Webspace ist, wird üblicherweise der Domain nur ein bestimmtes Verzeichnis als Web-Stammverzeichnis zugewiesen.
Wollte ich dann aber über das Backend die Seite aufrufen kam trotzdem noch die alte HTML-Seite.
Dann stimmt etwas mit der Zuweisung der Domain nicht. Das hat nichts mit WordPress zu tun sondern ist ein Problem bei deiner Server-Konfiguration. Wende dich an den Support deines Webhoster.
Intern heißt auf das Stammverzeichnis. Bei Strato liegen allerdings keine domainspezifischen Verzeichnisse vor. Sondern alles liegt unter root. Ich kontaktiere Strato definitiv. Allerdings funktioniert nun auch die HTML Seite die ich nun aus einem Überordner zurück in root verschoben habe. Ich bekomme für 2 Seiten der alten Seite nun auch einen internal error 500 – Dns Server für domain.decgi-bin kann nicht gefunden werden. Komisch das der Slash fehlt und eine htaccess gibt es dort auch nicht. 🙁
Entschuldige.. die HTML Seite funktioniert nicht mehr. Schreibfehler.
Zuletzt klappte der Umzug dann doch. Ich bin wie folgt vorgegangen:
Nachdem der erste Versuch komplett gescheitert ist, habe ich mithilfe eines Backups von Strato einen Restore des kompletten Webspace vom 4.12.2016 eingespielt. Damit konnte nicht nur der Ausgangszustand sondern auch die Funktionalität der alten HTML Seite wiederhergestellt werden.
Weiter ging es wie folgt:
1. Natürlich die obligatorischen Backups von DB und Content erstellt
2. Plugin All-in-one WP Migration auf der WP Seite unter der test.domain.de installiert
3. Mithilfe des Plugins einen File-Export der Seite erstellt und heruntergeladen
4. WordPress auf Zieldomain (domain.de) installiert.
5. Dort ebenfalls das Plugin All-in-one WP Migration installiert
6. Das exportierte File aus Schritt 3 habe ich dann per FTP in das Verzeichnis „ai1wm-backups“ des All-in-one.. Plugins unter der neuen WordPress-Installation von domain.de verschoben.
7. Danach habe ich mich zusätzlich auf die WP Administrationsoberfläche von domain.de eingeloggt und im All-in-One Plugin unter „Backups“ dann das per FTP dorthin verschobene File per Restore auf die „nackte“ WP Installation ausgerollt. (Das Plugin passt übrigens die Tabellen der DB nach Eingabe der Ziel-Domain während des Exports an)
8. Nach Restore fand ich die exakt gleiche Webseite vor. Nur noch die .htaccess der alten Seite musste noch ins neue WP Verzeichnis kopiert werden.
Warum die Domainweiterleitung von Strato „nicht funktionierte“ lag lediglich daran, dass mein Browser die alte Weiterleitung gecached hatte und ich nur den Browsercache hätten leeren müssen um das richtige Ergebnis zu erhalten.
Also unnötig Wind um ein eigentlich kleines Problem. Vielen vielen Dank an dieser Stelle für die Nerven und die Unterstützung Bego Mario Garde.
Beste Grüße messero
Beitrag als gelöst markiert.