Häufig ist es notwendig, WordPress auf einen neuen Server oder einen neue Domain umzuziehen oder von einer Subdomain zu einer anderen zu transferieren. WordPress macht es in solchen Fällen dem User leicht solche Umzüge selbst durchzuführen, ein paar einfach Hinweise sollte man aber trotzdem beachten.
Schritte für einen korrekten WordPress-Umzug:
1. Datenbank sichern
Bevor man sich an einem Umzug macht sollte der aktuelle Stand der Datenbank unbedingt gesichert werden. Gibt es Probleme beim Backup oder geht etwas wirklich schief kann so immer noch der alte Stand wieder hergestellt werden. Viele Webspaces und Server bieten phpmyAdmin als Datenbank-Software gleich mit an, darüber können Blogs bis etwa 2 Megabyte Daten gesichert und wieder hergestellt werden. Für größere Backups empfiehlt sich eine externe Software wie zum Beispiel mySQLDumper. Wer das Plugin WordPress Database Backup installiert hat kann auch dieses verwenden.
Ein reiner Export der Artikel aus dem WordPress Backend heraus reicht im übrigen nicht aus. Die Einstellungen der Plugins und die Optionen werden so nicht gesichert.
2. Datein sichern und anpassen
Im einfachsten Fall sichert man einfach alle Dateien die in der WordPress Installation auf dem alten Server liegen. Wer dies nicht möcht kann aber auch nur die wichtigen Dateien vom Server nehmen.
Gesichert werden sollte dabei das gesamte wp-content Verzeichnis. Darin liegt nicht nur das Template sondern es enthält auch die Plugins und die Uploads (Bilder) die man in der Betriebszeit auf den Server geladen hat. Es reicht nicht aus nur das Template zu sichern, denn dann müßte man sämtliche Plugins neu installieren und die Artikelbilder (und auch die Thumbnails) wären auch weg. Auch wichtig: die wp-config.php (zu finden im Root Verzeichnis) enthält einige wichtige Informationen und sollte daher auch gesichert werden. Wurde eine eigene Permalink Struktur angelegt wird auch noch die Datei .htaccess benötigt.
Auf dem neuen Server lädt man entweder das komplette alte Verzeichnis hoch oder (wenn nur die individuellen Dateien gesichert wurden) spielt eine neue WordPress Installation auf und ersetzt die htaccess Datei und das wp-content Verzeichnis durch die alten Dateirn.
Die wp-config.php sollte mit den neuen Zugriffsdaten auf die neuen Datenbank ausgestattet werden. Danach kann auch sie auf den Server geladen werden.
// ** MySQL settings ** //
define('DB_NAME', 'putyourdbnamehere'); // The name of the database
define('DB_USER', 'usernamehere'); // Your MySQL username
define('DB_PASSWORD', 'yourpasswordhere'); // ...and password
define('DB_HOST', 'localhost'); // 99% chance you won't need to change this value
Die Settings sind dabei mit den alten Zugriffsdaten für die alte Datenbank ausgefüllt, sie mssen durch die neuen Zugriffsdaten ersetzt werden.
3. Datenbank anpassen und überspielen
WordPress hinterlegt die Daten für die Domain auf der der Blog läuft in der Datenbank (wp_options), daher muss dieses Feld angepasst werden, damit WordPress die neuen Installation auf dem neuen Blog findet. Am einfachsten geht dies, wenn man in der alten Installation die Daten auf die neue URL ändert und danach eine neue Kopie der Datenbank sichert. Die Domain wird dabei 2 mal festgelegt (in den Feldern siteurl und home), in beiden Feldern muss die neue Domain eingetragen werden. Die neue Kopie der Datenbank wird dann auf den neuen Server gespielt, auch hier kann bei großen Dateien wieder mySQLDumper zum Einsatz kommen.
Wer sich gut mit Datenbanken auskennt kann die Daten auch direkt in der Datenbank oder im sql-File ändern.
4. Fertig
Das wars. Mehr ist an sich nicht notwendig und der Blog sollte jetzt bereits laufen. Im besten Fall wurden alle Optionen/Einstellungen übernommen. Wer den alten Blog weiterlaufen lassen möchte sollte das erste Backup der Datenbank auf den alten Server spielen, denn durch die Änderung der URL funktioniert der alte Blog nicht mehr.
Fehler & Probleme beim WordPress und neuen Domains
Mod_Rewrite und der 500 Fehler
Manchmal kann der neue Server keine htaccess-Datein lesen, weil der Server kein mod_rewrite Modul hat. Dann gibt es beim Aufruf der Artikel eine Fehlermeldung (meist internal Error 500). Unter Einstellungen/Permalinks kann man dies deaktivieren, lassen sich die Beiträge dann normal aufrufen muss man mod_rewrite aktivieren.
.htaccess-Fehler
Oft sind in der alten .htaccess-Datei noch feste Verlinkungen auf die alte Domain vorhanden die irgendwann mal manuell hinterlegt wurden. Diese funktionieren natürlich nicht mehr für die neue Domain daher sollten sie schnell angepasst werden.
Umlaute sehen merkwürdig aus
Das passiert häufig wenn beim Backup ein falsches charset (Sprachcode) verwendet wurde. In dem Fall einfach ein wenig mit den möglichen Varianten (latin, UTF 8 usw.) experimentieren (Download mit einem anderen Charset der alten Version) bis es passt. WordPress hat meist UTF-8 voreingestellt, es kann aber auch sein, das für einige Tabellen der Datenbank andere charsets voreingestellt sind. Auf bueltge.de gibt es für fortgeschrittene Anwender auch ein Script mit dem man die Umlaute direkt in der DB korrgieren kann.