Ich hatte ja ein Problem mit dem Umzug eines WordPress-Blogs; bei Tageslicht betrachtet war es aber ein Layer-8-Problem …
Ich bin generell kein Freund von fehlender Rückwärtskompatibilität, und so manche in den letzten Jahrzehnten hochgehypte Sprache kümmert sich leider einen feuchten Kehrricht darum. Insofern war »PHP Fatal error: Uncaught Error: Call to undefined function …« ein leichter Trigger für eine Standardreaktion: »Waah, diese Horde inkompetenter Nerds haben wieder was karpott gespielt!!1!elf!«.
Allerdings: »… is_customize_preview() in /var/www/ffgt-beta/wordpress/wp-content/plugins/the-events-calendar/common/src/Tribe/Customizer.php:402« habe ich im Eifer des Gefechts übersehen. Vorurteile, auch ich bin nicht frei davon.
Tja, Fakt ist: ein WP-Umzug ist mit das einfachste, was man sich wünschen kann: DB kopieren, WP-Unterverzeichnis kopieren, läuft. Das ist neben der Theorie auch die Praxis, eigentlich; allerdings war hier die Ausgangssituation, wie im Nachgang sich herausstellte, eine andere. Denn die WP-Installation auf dem Quellsystem war offensichtlich schon stark angegriffen, warum auch immer; jedenfalls fanden sich andere Fehlermeldungen des migrierten Blogs auch schon länger in den Logs des Quellsystems. Kurzum: neben fehlenden PHP-Paketen auf dem Zielsystem fehlten schon im Quellsystem Dateien — gar nicht so überraschend, war doch eine Umzugsmotivation auch ein sichtbarer Funktionsausfall im Backend.
Lessons learned:
- Fehlermeldungen gründlich checken, sind sie wirklich zielsystemorginär oder nicht auch beim Quellsystem einschlägig?
- Sind alle Pakete des Quell- auf dem Zielsystem installiert?
- Punkte 1 und 2 nocheinmal am Tage rekapitulieren
Tcha. Faktisch habe ich also die DB kopiert, ein aktuelles WP installiert und dieses auf die kopierte DB zeigen lassen. Dann per /etc/hosts-Eintrag den Zugriff auf die Site sichergestellt (WP redirected/rewrited auf den im WP konfigurierten FQDN — macht solche Migrationen nicht wirklich witzig), das verwendete Theme in Zielsystem installiert. Dann als Verwalter eingeloggt, im Quellsystem geguckt, welche Plugins installiert waren und jene im Zielsystem per WP-Backend installiert; einige waren »noch« konfiguriert, einige brauchten neue Credentials. Aber, ja, im Grunde ist eine WP-Migration wirklich ein Stück Keks ;)
