So ziehen Sie eine WordPress-Website auf einen neuen VPS um
Eine WordPress-Website umzuziehen bedeutet, drei Dinge zu verschieben: die Dateien (vor allem den Ordner wp-content), die Datenbank und den DNS-Record Ihrer Domain. Am einfachsten geht es mit einem Migrations-Plugin. Von Hand kopieren Sie die Dateien, exportieren die Datenbank, laden sie auf dem neuen Server und korrigieren die Adressen, falls sie sich geändert haben.
Die Reihenfolge ist bei jeder Methode dieselbe: sichern, auf dem neuen Server testen und DNS zuletzt umstellen. Schalten Sie den alten Server nicht ab, bevor die neue Website funktioniert.
Bevor Sie beginnen
- Legen Sie eine vollständige Sicherung an. Bewahren Sie eine Kopie der Dateien und der Datenbank auf Ihrem eigenen Computer auf. Auch die offizielle WordPress-Anleitung zum Umzug rät, vor jeder Änderung an der Datenbank zu sichern.
- Ermitteln Sie die Größe. Wie viele MB haben der Ordner
wp-contentund die Datenbank? Davon hängt ab, welche Methode zu Ihnen passt. - Vergleichen Sie die Versionen. Funktioniert die PHP-Version auf dem neuen Server mit Ihren alten Plugins? Aktualisieren Sie ein inkompatibles Plugin, bevor Sie umziehen.
- Senken Sie die TTL. Ein oder zwei Tage vor der Umstellung setzen Sie die TTL der DNS-Records Ihrer Domain auf 300 Sekunden. So bleibt die alte Adresse nicht lange in den Caches.
- Prüfen Sie, wo Ihre E-Mail liegt. Das Ändern des A-Records berührt Ihre MX-Records nicht. Läuft Ihre Mail auf dem Server der Website, muss sie separat umgezogen werden.
Methode 1: Umzug mit einem Plugin
Migrations-Plugins bündeln die Dateien und die Datenbank in einem Paket und entpacken es auf der neuen Website, und die meisten korrigieren auch die Adressen. Es gibt drei gängige Ansätze:
- Ein Paket im Browser hochladen. Sie erstellen das Paket auf der alten Website, installieren dasselbe Plugin im neuen WordPress und laden das Paket hoch (All-in-One WP Migration arbeitet zum Beispiel so). Dieser Ansatz stößt an das Upload-Limit des Servers.
- Das Paket per SFTP ablegen. Plugins wie Duplicator verlangen, dass Sie das Archiv und eine Datei
installer.phpin einen leeren Ordner auf dem neuen Server kopieren undinstaller.phpdann im Browser öffnen. Datenbank und Datenbankbenutzer müssen Sie vorher anlegen. Löschen Sie am Endeinstaller.phpund das Archiv, denn jeder, der die Adresse kennt, könnte den Installer erneut ausführen. - Aus einem Remote-Speicher wiederherstellen. Mit einem Sicherungs-Plugin wie UpdraftPlus verbinden Sie auf der neuen Website denselben Cloud-Speicher und finden die Sicherung über den Link „Rescan remote storage“. Die große Datei laden Sie nie über den Browser hoch.
Das 64-MB-Limit auf dem fertigen WordPress-Server
Auf dem fertigen WordPress-Server von Seturack können Sie höchstens 64 MB auf einmal hochladen. Plugins, die ein Paket über den Browser annehmen, stoßen an dieses Limit. Ist Ihr Paket größer, nutzen Sie die Wiederherstellung aus dem Remote-Speicher oder ziehen Sie die Website von Hand um. Weil die fertige App in Docker läuft, liegen die Dateien nicht dort, wo sie bei einer klassischen Installation lägen. Für eine große Website, die Sie von Hand umziehen, ist ein sauberer Ubuntu-Server mit installiertem Apache oder Nginx besser vorhersehbar.
Methode 2: Umzug von Hand
Diese Schritte gelten für eine klassische Installation, bei der die Dateien in /var/www/html liegen. Wenn Sie WP-CLI als root ausführen, ergänzen Sie in den Befehlen --allow-root. Auf dem alten Server, im WordPress-Ordner:
- Exportieren Sie die Datenbank außerhalb des Web-Ordners, denn ein dort liegender Dump kann von jedem heruntergeladen werden, der die Adresse kennt:
wp db export ~/site.sql. Ohne WP-CLI nutzen Siemysqldump -u USER -p DATABASE > ~/site.sql. - Archivieren Sie die Dateien mit
tar -czf ~/files.tar.gz . - Kopieren Sie beide mit
scp ~/site.sql ~/files.tar.gz user@NEW_IP:~/auf den neuen Server.
Auf dem neuen Server:
- Legen Sie eine leere Datenbank und einen Benutzer dafür an.
- Entpacken Sie die Dateien mit
tar -xzf ~/files.tar.gz -C /var/www/htmlin den Web-Ordner. - Aktualisieren Sie Datenbankname, Benutzer und Passwort in
wp-config.phpmit den neuen Werten. Übertragen Sie den Besitz an den Benutzer des Webservers (www-dataunter Debian und Ubuntu). - Importieren Sie die Datenbank mit
wp db import ~/site.sql. Der Befehl liest seine Einstellungen auswp-config.phpund legt die Datenbank nicht für Sie an.
Bleibt die Domain gleich, ist keine Adresskorrektur nötig. Ändert sie sich, ersetzen Sie die alte Adresse durch die neue. Probieren Sie es zuerst mit --dry-run und lassen Sie die Spalte guid in Ruhe:
wp search-replace 'https://old.com' 'https://new.com' --skip-columns=guid --dry-run
Sieht die Ausgabe richtig aus, führen Sie den Befehl ohne --dry-run erneut aus. Machen Sie kein einfaches Suchen-und-Ersetzen in der Datenbank, denn serialisierte Daten können dabei kaputtgehen. WP-CLI verarbeitet diese Daten korrekt.
Auf dem neuen Server testen, bevor Sie DNS umstellen
Tragen Sie die IP-Adresse des neuen Servers und Ihre Domain in die Datei hosts auf Ihrem Computer ein. Die Datei liegt unter Windows in C:\Windows\System32\drivers\etc\hosts und unter macOS und Linux in /etc/hosts:
203.0.113.10 example.com www.example.com
Von da an öffnet nur Ihr Browser den neuen Server, während alle anderen weiterhin den alten sehen. Probieren Sie Anmeldung, Seiten, Bilder und Formulare aus und löschen Sie dann die Zeile. Ein HTTPS-Zertifikat wird in der Regel ausgestellt, sobald DNS auf den neuen Server zeigt.
Die DNS-Umstellung
- Wenn auf die Website ständig geschrieben wird (Shop, Mitgliedschaften, Kommentare), schalten Sie die alte Website in den Wartungsmodus, ziehen Sie die Datenbank ein letztes Mal und übertragen Sie sie. Sonst gehen Bestellungen verloren, die während der Umstellung eingehen.
- Richten Sie in Ihrem DNS-Panel den A-Record auf die neue IP-Adresse und tun Sie dasselbe für www. Der Artikel zum Verbinden Ihrer eigenen Domain zeigt die Schritte.
- Mit einer niedrigen TTL verbreitet sich die Änderung schnell. Manche Netzwerke behalten den alten Record länger.
- Vergewissern Sie sich, dass HTTPS auf dem neuen Server funktioniert.
- Wenn alles gut ist, setzen Sie die TTL auf den alten Wert zurück. Behalten Sie den alten Server noch einige Tage und schalten Sie ihn dann ab.
Checkliste nach dem Umzug
- Öffnen Sie Settings > Permalinks und klicken Sie auf Save, um die Rewrite-Regeln zu aktualisieren.
- Öffnen Sie die Startseite, einen Beitrag, ein Bild und das Kontaktformular.
- Suchen Sie nach Mixed-Content-Warnungen. Die Korrektur der Adressen löst die meisten davon.
- Testen Sie den E-Mail-Versand und prüfen Sie die Einstellungen Ihres SMTP-Plugins.
- Leeren Sie den Cache Ihres Caching-Plugins.
- Löschen Sie
~/site.sqlund~/files.tar.gzauf beiden Servern. Beide enthalten sensible Daten. - Prüfen Sie unter Settings > Reading, dass das Kästchen, das Suchmaschinen abhält, nicht angekreuzt ist.
Wenn Sie mit einem Plugin umziehen, ist ein leeres WordPress der leichtere Start. Ein Server mit vorinstalliertem WordPress ist in etwa 3,5 bis 4 Minuten bereit. Sehen Sie sich die Seite zum WordPress-Server an.
Kommentare0
Noch keine Kommentare
Schreiben Sie den ersten Kommentar und teilen Sie Ihre Gedanken.
Bitte melden Sie sich an oder registrieren Sie sich, um einen Kommentar zu hinterlassen.