Contao 4.4 richtig kopieren und dann umziehen auf neuen Hostingserver

In der Vergangenheit z.B. bei Contao 3.X war es einfach ein Backup anzulegen und die Installation zu transferieren. Einfach via FTP Daten kopieren und ein Backup der Datenbank (mysql-Dump) auf den neuen Platz importieren und in der localconfig die neue Datenbank eintragen... einfacher geht es kaum.

Contao 4.4 ist da etwas anders, da es hier Ordnerverknüpfungen (Symlinks) gibt und eine einfach Kopie vermutlich meist nicht funktionieren wird (Fillezilla macht aus diesen Verknüpfungen z.B. Dateien).

Wer Contao 4.9 nutzt kann hier die etwas angepasste Anleitung nachlesen...

Wie man Contao 4.4 mit dem Contao Manager umziehen kann – hier eine Step by Step Anleitung.

Erste Schritte - Alle Backups anfertigen:

1.) Ein Datenbank Backup machen. Wie bisher auch, einfach den MySQL-Dump erstellen und in die neue, leere Datenbank importieren (meist mit PHPMyAdmin).

2.) Via FTP ein Backup der Datei composer.json und composer.lock machen, auch vom Ordner /app/config/. Ebenso muss man die Datei localconfig.php im Ordner /system/config/ sichern (ggf. auch andere Dateien die man hier hinterlegt hat).

Weitere Backups macht man vom Ordner /files und /templates

Von manuell installierten Modulen sollte man auch ein Backup machen (/system/modules/), hat man den Manager für die Modulinstallation genutzt ist dies nicht notwendig.

Nächste Schritte - Ziel einrichten, Dateien ändern, Backups rückspielen:

3.) Im Ordner /app/config/ öffnet man die Datei parameters.yml und trägt dort die neue Datenbank ein (database_host, database_user, database_password, database_name). Den Eintrag secret lässt man wie bisher um das bekannt Install-Passwort zu erhalten.

4.) Dann einen neuen, leeren FTP Zugang im Ziel-Hosting anlegen und dort Contao 4 einfach wie üblich im Ordner /web mittels der Datei contao-manager.phar.php installieren. Wichtig ist, nicht das Install-Tool (also nicht "Datenbank aktualisieren") zum Abschluss der Installation aufrufen! Diesen Schritt einfach überspringen.

5.) Die Daten aus Schritt 2 werden nun an die passenden Stellen in die Korrekten Ordner zurück kopiert. Hier ist es enorm wichtig die Daten an die korrekten Stellen zurück zu kopieren, also nicht in den /web Ordner sondern eine Ebene darüber. Die meisten Ordner sind schon angelegt. Auch die /templates und /files zurück kopieren an die entsprechende Stelle.

6.) Es ist wichtig, dass nun alle Zusatzmodule installiert werden. Welche Module dies sind, hat man dem Contao-Manager mit dem hochladen der composer.json mitgeteilt. Oft werden diese Module aber nicht sofort im Contao-Manager angezeigt. Meist genügt es F5 zu drücken und den Browsercache zu leeren. Klappt dies nicht, sollte alle Caches in der Systemwartung geleert werden.
Nun die Installation der angezeigten Zusatzmodule vornehmen und abschließen (kein Datenbankupdate).

7.) Hat man Module manuell installiert, sollte man nun erst das Install-Tool öffnen und den Datenbank-Update durchführen. Mit dem Install-Tool kann man auch prüfen ob man ggf. etwas vergessen hat, oder etwas noch nicht passt. In jedem Fall hier etwas vorsichtig vorgehen und überlegen ob man ggf. doch erst ein Modul installieren muss.

8.) Zum Abschluss meldet man sich im Contao-Backend (Wichtig im Backend, nicht im Contao-Manager an (dies sollte nun klappen) und wählt in der der Systemwartung die Option 'Symlinks neu erstellen'. Außerdem an dieser Stelle noch den 'Bilderchache leeren' und den 'Skriptcache leeren' damit Bilder und CSS Dateien und Scripte korrekt geladen werden.

Nun sollte die Webseite funktionieren. Klappt etwas nicht sollte man die Schritte alle nochmal durchgehen. Gerade beim ersten mal kann es etwas kniffelig sein.

Nachträge bzgl. Fehlerbehebung:

1.) Lassen sich im Contao-Manager die Zusatzmodule nicht installieren und es kommt die Fehlermeldung, dass der Konsolentask abgebrochen wurde, dann hilft häufig ein Update des Composers. Dazu in 'Systemwartung' bei 'Composer-Abhängigkeiten' rechts außen auf das Pfeilchen klicken und 'Composer Update ausführen' aktivieren. Danach noch ein Datenbankbackup ausführen und die Installation der Module erneut ausprobieren. Oft ist dies die Lösung.

2.) Kommt nach der Systemprüfung des Contao-Managers die Auswahl, dass man eine Reparatur ausführen muss, oder den Manager im abgesicherten Modus starten soll, dann liegt dies oft an einer fehlenden Datenbankverbindung. Bitte die Daten in der Datei parameters.yml nochmal überprüfen. Sofern in der parameters.yml alles korrekt ist, könnte es auch am Passwort der MySQL Datenbank liegen. Manche Passwortzeichen sind bei MySQL nicht erlaubt. Bitte ein neues, evtl. einfacheres Passwort ausprobieren. Wenn es dann klappt kann man immer noch schauen, mit welchen Kombinationen man ein sicheres und trotzdem gültiges Passwort für die Datenbank erstellt.

3.) Mit dem Contao Manager der neuesten Version (z.B. 1.4.4) steht die Contao Version 4.4 bei der Installation nicht mehr zur Auswahl. Dies kann dann dazu führen das es nicht immer pefekt klappt mit der Installation. Eine mögliche Lösung ist es die composer.json noch vor dem Aufruf der contao-manager.phar.php an die korrekte Position (oberhalb von/web) abzulegen. Beim Aufruf wird dann die korrekt Verison (4.4.) samt der Zusatzmodule installiert. Erst im Nachgang kann man dann das Update auf die Version 4.9 oder höher machen.

Zurück

Kein Erfolg mit den hier beschriebenen Contao-Lösungen? Klappt es nicht mit dem gewünschten Contao-Update oder dem Umzug auf einen neuen Hostingserver?

Wenn die Frustration zu groß wird, einfach bei mir melden:
info@liquid-artwork.de - Ansprechpartner: Lars Scheumann
oder per Telefon: 07223 / 91 59 372

Fragen Sie den Contao Spezialisten
Manchmal ist es besser solche umfangreichen Aufgaben dem Profi zu überlassen, der schneller und sorgfältiger damit umgehen kann. Kostet seinen Preis, aber lohnt sich schnell, bevor man sich tagelang damit herum ärgert. LIQUID-ARTWORK betreut auch Kunden die ihre Webseite selbst erstellt haben, oder durch Dritte erstellt wurden. Kurze Anfrage bei mir und nach einer ersten Prüfung kann ich meist einen groben Preis nennen. Die Anfrage bei mir als alleine kostet dabei nichts!

Contao Spezialist - Contao Problemlösungen

Viele weitere, ähnliche und hoffentlich hilfreiche Beiträge findet Ihr im kompletten Contao-Helpdesk das ständig erweitert wird.

Zum Contao-Helpdesk...