Ihr habt lokal mit WordPress unter XAMPP eine tolle Webseite oder einen Blog erstellt und wollt diese nun auf einen richtigen Webspace übertragen? Dazu sind einige Schritte notwendig. In dieser Anleitung zeige ich euch, wie man eine lokale WordPress Installation auf einen Webserver migrieren kann.
Vorwort
Für die Migration einer lokalen Installation zu einem Webhoster gibt es verschiedene Wege. Ihr könnt die Webseite manuell migrieren oder Plugins dafür nutzen. Ich bevorzuge hier den manuellen Weg, da ich so besser kontrollieren kann was geändert wurde. Für mich hat der hier gezeigte Weg immer am besten funktioniert. Ich nutze lediglich ein Plugin um in der Datenbank die Pfade automatisch ersetzen zu lassen.
Voraussetzungen
Zunächst benötigt ihr natürlich einen Webserver samt Domain. Diesen müsst ihr vorab bei einem Provider buchen. Gängige Provider in Deutschland sind zum Beispiel Strato, 1&1 oder AllInkl.
Habt ihr das Webhosting beim Provider gebucht, benötigt ihr natürlich den Adminzugang zu diesem. Außerdem benötigt ihr einen FTP-Zugang zu eurem Webspace und Zugriff auf die MySQL Datenbankverwaltung phpmyadmin.
Lokal auf dem PC benötigt ihr den Adminzugang zu eurer WordPress Installation und ebenfalls Zugriff auf phpmyadmin. Wie ihr dort hin kommt, könnt ihr in der Anleitung „WordPress lokal installieren mit XAMPP“ erfahren.
WordPress absolute Serverpfade herausfinden
Um im späteren Verlauf in der migrierten Datenbank gewisse Pfade ersetzen zu können, benötigt ihr die absoluten Serverpfade eurer WordPress Installation. Am einfachsten geht dies mit einer PHP-Datei (hier: pfad.php) mit folgendem Inhalt:
<?php
$p = getcwd ();
echo $p;
?>
Diese Datei legt ihr nun jeweils in das Stammverzeichnis eurer Webseite. Bei eurer lokalen Installation findet ihr das Stammverzeichnis in der Regel unter C:\xampp\htdocs\. In einigen Fällen auch in einem Unterordner von htdocs. Auf dem Webspace kann das Verzeichnis auch anders heißen. Dort müsst ihr die Datei mittels FTP-Programm ablegen. Dafür könnt ihr zum Beispiel FileZilla nutzen.
Anschließend ruft ihr die Datei mit einem Browser auf. Lokal wäre dies http://localhost/pfad.php und auf dem Webspace http://eureDomain.de/pfad.php.
Die ausgegebenen Pfade kopiert ihr euch nun am besten in eine Textdatei, da wir diese später nochmals benötigen.
Das Plugin WP Migrate DB installieren
Installiert in eurer lokalen Installation das Plugin WP Migrate DB. Ihr könnt das Plugin hier herunterladen: https://de.wordpress.org/plugins/wp-migrate-db/
Dieses Plugin benötigen wir im späteren Verlauf um die Pfade in der Datenbank ersetzen zu lassen. Der Vorteil des Plugins ist, dass es auch sogenannte Serialized Data anpassen kann und somit Probleme bei der Migration umgangen werden können. Weitere Informationen zu WordPress Serialized Data findet ihr hier: https://wpengine.com/support/wordpress-serialized-data/
Im Plugin müsst ihr zunächst noch nichts einstellen. Die reine Installation ist ausreichend.
Lokale Datenbank exportieren
In diesem Schritt geht es darum eure lokale MySQL Datenbank zu exportieren. Dazu ruft ihr im Browser http://localhost/phpmyadmin auf. Es öffnet sich die Datenbankverwaltung von eurer lokalen XAMPP Installation.
Im linken Bereich klickt ihr dann auf eure WordPress Datenbank, welche ihr bei der Installation von WordPress mit XAMPP angelegt habt. Anschließend findet ihr oben in den Tabs den Punkt Exportieren.
Es öffnet sich der Assistent zum Export der Datenbank. Als Exportmethode wählt ihr „schnell“ und bei Format „SQL„. Nach einem Klick auf OK wird die Datenbank heruntergeladen. Ihr findet anschließend die Datenbankdatei mit der Dateiendung .sql in eurem Download-Ordner. Diese Datei benötigen wir in den nächsten Schritten.
Neue Datenbank auf dem Webserver erstellen
Erstellt in diesem Schritt eine neue leere Datenbank auf eurem Webspace. Je nach Hostingumgebung müsst ihr auch einen entsprechenden Datenbank-Benutzer anlegen, welcher Zugriff auf die Datenbank hat. Diese Daten notiert ihr ebenfalls in der Textdatei
Letzte Aktualisierung am 17.11.2024 / Affiliate Links / Bilder von der Amazon Product Advertising API – Als Amazon-Partner verdiene ich an qualifizierten Käufen.
Lokale WordPress Dateien hochladen
Im nächsten Schritt müsst ihr nun das komplette lokale WordPress Verzeichnis zu eurem Provider hochladen. Das erledigt ihr erneut über FTP mit dem Programm FileZilla. Achtet hierbei darauf, dass ihr die Dateien in das richtige Verzeichnis hochladet. Bei Hostingumgebungen mit mehreren Domains kann es sein, dass ihr die Dateien in einen Unterordner laden müsst. Das findet ihr am besten bei den Domaineinstellungen heraus. In einigen Fällen kann es vorkommen, dass FileZilla nicht alle Dateien übertragen kann. In diesem Fall müsst ihr die fehlgeschlagenen Dateien erneut zur Warteschlange hinzufügen und diese anschließend erneut abarbeiten lassen.
Datenbank zu Provider importieren
Sucht nun im Verwaltungsbereich eures Webspace nach dem Punkt Datenbanken. Dort solltet ihr die Möglichkeit haben auf die Datenbankverwaltung phpmyadmin zuzugreifen. Dies sollte ähnlich der lokalen Version von phpmyadmin aussehen.
Auf der linken Seite wählt ihr nun die vorher neu erstellte Datenbank aus und klickt anschließend im Menü auf Importieren.
Im Importfenster wählt ihr oben nun die vorher heruntergeladene SQL-Datei aus. Die restlichen Einstellungen können an dieser Stelle auf den Standardeinstellungen belassen werden.
Je nach Hostinganbieter gibt es auch abseits von phpmyadmin die Möglichkeit eine Datenbank zu importieren. Beachten solltet ihr zusätzlich, das bei vielen Anbietern die maximale Uploadgröße für SQL-Dateien eingeschränkt ist. Dann muss die Datenbankdatei vorher aufgesplittet werden. Mit SQL Dump Splitter funktioniert das relativ schnell und unkompliziert.
Die Datei wp-config.php anpassen
Sind alle Dateien fertig hochgeladen, müsst ihr die Datei wp-config.php anpassen. Ihr findet die Datei im WordPress Hauptverzeichnis. Bearbeiten könnt ihr die Datei auch über FileZilla, indem ihr mit Rechtsklick – Bearbeiten auf die Datei klickt.
In dieser PHP-Datei müsst ihr nun den Pfad für eure WordPress Installation anpassen und die Zugangsdaten zur neuen MySQL Datenbank eintragen.
define( ‚DB_NAME‘, ‚wptest‘ );
define( ‚DB_USER‘, ‚root‘ );
define( ‚DB_PASSWORD‘, ‚deinPasswort‘ );
define( ‚DB_HOST‘, ‚localhost‘ );
define( ‚WP_SITEURL‘, ‚https://deineDomain.de‘ );
define( ‚WP_HOME‘, ‚https://deineDomain.de‘ );
WordPress Pfade anpassen und ersetzen
Im vorletzten Schritt muss nun noch die Datenbank angepasst werden. Dazu solltet ihr nun das Admin-Panel von WordPress unter der neuen Domain aufrufen können. Das findet ihr unter https://deineDomain.de/wp-admin. Die Zugangsdaten sind die gleichen, wie bei eurer lokalen Installation.
Überprüft nun zunächst im linken Menü unter Einstellungen – Allgemein ob die Pfade für die neue Domain passen.
Anschließend klickt ihr in WordPress-Menü auf Werkzeuge – Migrate DB um das vorher installierte Plugin zu starten. Mit Hilfe des Plugins können nun die alten Pfade in der Datenbank gesucht werden und durch die neuen Pfade ersetzt werden.
Auf der Übersichtseite des Plugins klickt ihr nun auf Migrate und wählt dann Search & Replace.
Bei den Einstellungen und Pfaden solltet ihr sehr sorgfältig vorgehen, denn Fehler an dieser Stelle beinträchtigen später die Funktion der Webseite.
Beachtet außerdem, dass ihr lokal in XAMPP per http auf die Seite zugegriffen habt. Vermutlich möchtet ihr in der Online-Version aber alle Links auf https ändern um eine verschlüsselte Verbindung nutzen zu können. Dazu muss zusätzlich ein SSL-Zertifikat auf dem Webspace installiert sein. Je nach Anbieter lässt sich hier zum Beispiel der kostenlose Dienst Let´s Encrypt nutzen.
Weiterleitung für HTTPS einrichten
Dieser Schritt ist optional und abhängig davon ob ihr auf der neuen Webseite eine verschlüsselte Verbindung via HTTPS nutzen wollt. Außerdem benötig ihr ein aktives SSL-Zertifikat auf eurem Webspace. Habt ihr im Schritt für die Ersetzung der Pfade bereits HTTP durch HTTPS ersetzt und ebenfalls in der wp-config.php die entsprechenden Pfade angegeben, ist die Hauptarbeit für diesen Schritt bereits erledigt. Zusätzlich solltet ihr aber im Stammverzeichnis eurer WordPress-Installation die Datei .htaccess unterhalb von #END WordPress um folgenden Angaben ergänzen:
#END WordPress
RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteRule (.*) https://%{HTTP_HOST}/$1 [R=301,L]
Webseite auf Funktion prüfen
Nachdem ihr alle Daten übertragen habt und die Pfade in den Config-Files sowie in der Datenbank angepasst habt, solltet ihr eure Webseite auf Funktion prüfen. Um sicher zu gehen, dass alle Pfade korrekt ersetzt wurden, prüft ihr zunächst die interne Verlinkungsstruktur und anschließend die Funktionalität von Plugins wie zum Beispiel dem Kontaktformular.
Fazit
Die manuelle WordPress Migration ist zwar etwas aufwendiger als eine Migration mittels Plugin, bietet dafür aber auch die Möglichkeit für individuelle Anpassungen. Auch im Fehlerfall könnt ihr händisch eingreifen und habt somit einen besseren Überblick der einzelnen Schritte.
Letzte Aktualisierung am 18.11.2024 / Affiliate Links / Bilder von der Amazon Product Advertising API – Als Amazon-Partner verdiene ich an qualifizierten Käufen.