TYPO3 Composer: vom Classic Mode zur Composer-Installation

Stand: 9. Oktober 2026

Jedes TYPO3 Update beginnt mit einer Frage: Läuft die Installation mit TYPO3 Composer oder noch im Classic Mode? Im Composer Mode verwaltet Composer Core, Extensions und Abhängigkeiten, im Classic Mode kommen die Dateien per Archiv oder Extension Manager ins System. TYPO3 14 verlangt für jede Extension eine composer.json, die Datei ext_emconf.php ist deprecated.

TYPO3 Classic Mode an der Installation erkennen

Ob Ihre Installation im Classic Mode läuft, sehen Sie in wenigen Minuten. Im Projektstamm prüfen Sie mit ls -la composer.json composer.lock vendor, ob die drei Einträge existieren. Fehlen sie, ist es der Classic Mode. Weitere Merkmale:

  • Es gibt keine composer.json und keine composer.lock im Projektstamm.
  • Der Ordner vendor/ fehlt.
  • Der Core liegt als Archiv oder Symlink vor, und typo3/ sowie index.php befinden sich direkt im Webroot.
  • Extensions in typo3conf/ext/ stammen aus dem TER oder wurden per Upload eingespielt.

Für ein Update zählt vor allem eines: Im Classic Mode gibt es keinen Abgleich der Abhängigkeiten, Konflikte zwischen Core, Extensions und PHP-Bibliotheken zeigen sich deshalb erst im laufenden Betrieb.

Warum sich TYPO3 Composer im laufenden Betrieb lohnt

Mit TYPO3 Composer werden Updates reproduzierbar: Die composer.lock hält fest, welche Version von Core, Extension und Bibliothek installiert ist. Liegt sie im Git-Repository, bringt composer install Test- und Live-System auf denselben Stand. Jede Versionsänderung erscheint im Git-Diff und lässt sich im Review prüfen, bevor sie live geht.

Ein Update ist dann ein Befehl statt einer Dateikopie: Sie ändern die Paketanforderung, Composer löst die Abhängigkeiten auf und bricht ab, wenn die Constraints nicht erfüllbar sind. Das Deployment besteht darin, den Code aus Git auszuliefern und auf dem Zielsystem die Pakete zu installieren.

ELTS-Repository nur per Composer erreichbar

ELTS (Extended Long Term Support) liefert Sicherheitsupdates, wenn die kostenlose Pflege einer Version endet. Das Repository für TYPO3 ELTS ist nur per Composer erreichbar. Ohne die Composer-Installation von TYPO3 bleibt es unerreichbar, eine Classic-Mode-Installation kann es nicht nutzen.

Der Zeitrahmen ergibt sich aus dem Release-Rhythmus: Eine neue LTS-Version erscheint etwa alle 18 Monate, jede LTS wird mindestens 3 Jahre kostenlos gepflegt, und parallel werden 2 LTS-Versionen betreut. TYPO3 14.3 erhält kostenlose Bugfixes bis 31.12.2027 und Sicherheitsupdates bis 30.06.2029, reguläres ELTS läuft bis 30.06.2032, Partner-ELTS bis 30.06.2033. Für TYPO3 13.4 LTS gelten kostenlose Sicherheitsupdates bis 31.12.2027 und ELTS bis 31.12.2030, die kostenlosen Bugfixes endeten am 30.04.2026.

Besonders relevant ist das für TYPO3 12.4: Der kostenlose Support endete am 30.04.2026, ELTS läuft bis 30.04.2029, mit Partnerjahr bis 30.04.2030. Ohne ELTS bleiben TYPO3-12-Installationen von den am 09.06.2026 veröffentlichten 14 Advisories ungepatcht, darunter 5 mit Schweregrad „High“. Wer diese Version bis dahin weiter betreiben will, braucht dafür eine Installation mit TYPO3 Composer.

TYPO3 Composer Migration vor dem Update auf TYPO3 14

Die Umstellung auf Composer erfolgt zuerst, im selben Projekt wie das Update auf TYPO3 14.3, das am 21.04.2026 erschienen ist. So lassen sich Fehler der Umstellung von Fehlern des Updates trennen. Auf dem Server brauchen Sie Composer ab 2.1, mindestens 256 MB PHP-Memory und PHP 8.2 bis 8.5, empfohlen sind PHP 8.4 oder 8.5, weil PHP 8.2 Ende 2026 ausläuft (Sicherheitsupdates bis 31.12.2026). Bei der Datenbank gelten für TYPO3 14 die Mindestversionen MariaDB 10.4.3, MySQL 8.0.17, PostgreSQL 10 und SQLite 3.8.3; MySQL 5.7 und MariaDB unter 10.4 werden von v13/v14 nicht mehr unterstützt. Vor dem ersten Schritt sichern Sie den Stand mit einem vollständigen Backup aus Dateien und SQL-Export, richten eine Testumgebung ein und nutzen Git für nachvollziehbare Änderungen. Wo die Composer-Umstellung im Projekt steht, zeigt die TYPO3 Upgrade Checkliste.

Umstellung Schritt für Schritt nach offizieller Dokumentation

  1. Legen Sie ein neues Zielverzeichnis neben der Alt-Installation an und führen Sie dort composer create-project typo3/cms-base-distribution aus, das die Projektstruktur samt composer.json erzeugt.
  2. Ergänzen Sie Core und Extensions mit composer require vendor/paket:version, das Pakete aus Packagist bezieht. Lokale Pakete wie das Sitepackage tragen Sie als Repository in der composer.json ein, und composer dumpautoload erzeugt nach Änderungen am Autoloading die Autoload-Informationen neu.
  3. Bauen Sie mit composer install die Verzeichnisse vendor/ und public/ auf.
  4. Übernehmen Sie aus der Alt-Installation die Site-Konfiguration (public/typo3conf/sites nach config/sites), die Systemeinstellungen (LocalConfiguration.php nach config/system/settings.php), das fileadmin und die Datenbank.
  5. Stellen Sie den Document Root auf public/ um und prüfen Sie Frontend und Backend.
  6. Räumen Sie erst nach erfolgreichem Test die Alt-Installation auf: public/index.php, public/typo3/ und die per TER oder Git eingespielten Extensions in public/typo3conf/ext/ entfallen. Ab v14 können Composer-Installationen ohnehin auf typo3/install.php und den Ordner public/typo3 verzichten.

Aufwand der Umstellung realistisch planen

Die Migration auf Composer kostet je nach Projektgröße einen bis mehrere Personentage und zahlt sich beim nächsten Update aus. Den Rahmen setzen Zahl und Zustand der Extensions sowie die Server-Umgebung. Erfassen Sie dafür alle Extensions samt Versionen und klären Sie je Extension vier Punkte:

  • Existiert eine composer.json? Fehlt sie, muss sie nachgerüstet werden. Das gilt auch für das Sitepackage und eigene Extensions und erhöht den Aufwand je Paket.
  • Gibt es ein Packagist-Paket oder nur ein Pfad-Repository, etwa unter ./packages/*? Ein Pfad-Repository liegt im Projekt selbst, Sie pflegen seine Versionen und Constraints also bei jedem Update eigenständig.
  • Ist die Extension für die Zielversion v14 freigegeben? Fehlt die Freigabe, wird eine neue Version oder eine Anpassung nötig.
  • Liegen lokale Anpassungen direkt im Extension-Ordner? Diese müssen vor dem Löschen gesichert und sauber übertragen werden.

TYPO3 Composer Update durchführen und Probleme beheben

Beim Update per Composer sorgen Sie zuerst für eine passende PHP-Version: TYPO3 14 unterstützt PHP 8.2 bis 8.5. Testen Sie das Projekt gründlich und aktualisieren Sie TYPO3 erst danach, damit sich Core-Fehler von PHP-Fehlern unterscheiden lassen. Mehr dazu auf der Seite TYPO3 PHP-Version.

Aktivieren Sie das Deprecation-Log einige Wochen vor dem Update, damit veraltete Aufrufe im Betrieb sichtbar werden. Notwendige Code-Anpassungen erarbeiten Sie auf einer Kopie der Website, nie auf dem Produktivsystem.

Zielversion ist TYPO3 14 in der LTS-Ausgabe 14.3. Die Sprint Releases 14.0, 14.1 und 14.2 werden nur bis zum nächsten Sprint Release unterstützt und sind nicht für Produktivsysteme vorgesehen. Setzen Sie die TYPO3-Constraints in der composer.json auf ^14.3. Für ein einzelnes Paket erledigt das composer require typo3/cms-backend:^14.3, das Paket und Versionsanforderung auf 14.3 hebt.

Für alle TYPO3-Pakete zugleich erzeugt der Composer Helper, ein Web-Tool, den passenden composer require-Befehl. Führen Sie den generierten Befehl nie auf dem Produktivsystem aus, sondern lokal oder auf einer Kopie samt Datenbank.

Abhängigkeitskonflikte erkennen und auflösen

Meldet Composer, dass die Anforderungen nicht zu einem installierbaren Paketsatz auflösbar sind, findet es keine Kombination von Versionen, die alle Constraints der composer.json gleichzeitig erfüllt. Die Fehlermeldung nennt dazu die beteiligten Pakete und den Constraint, der nicht passt. Zwei Befehle grenzen die Ursache ein:

  • composer why-not typo3/cms-core:^14.3 zeigt, welche Pakete die Zielversion blockieren.
  • composer why vendor/paket zeigt, welche Pakete ein bestimmtes Paket benötigen.

Meist gibt es für TYPO3 14 noch keine kompatible Version einer Extension, oder ein Constraint ist zu eng gefasst und schließt die neue Hauptversion aus. Ein Beispiel aus der offiziellen Dokumentation betrifft den Wechsel von v13 LTS auf v14 LTS: Bei helhum/typo3-console ist ^8.2 nur mit v13 LTS kompatibel, erst ^8.3 unterstützt v14 LTS. Zur Abhilfe hängen Sie helhum/typo3-console:^8.3 an den composer require-Befehl für die TYPO3-Pakete an und führen ihn erneut aus. Gibt es für eine Extension keine freigegebene Version, prüfen Sie TER, Packagist und das Code-Repository des Autors und suchen gegebenenfalls eine Alternative.

vendor/ neu aufbauen und Update abschließen

Weicht vendor/ vom gesperrten Stand ab, etwa nach einem abgebrochenen Composer-Lauf oder nach manuellen Änderungen im Ordner, bauen Sie ihn neu auf. Löschen Sie dazu das Verzeichnis mit rm -rf vendor/ und installieren Sie mit composer install alles frisch aus dem Lockfile. Bereits durchgeführte Datenbank-Schritte bleiben dabei unberührt. Danach folgen die Nacharbeiten, für die die offizielle Dokumentation nach dem Upgrade eine Reihenfolge mit 8 Schritten vorgibt, darunter Caches leeren, Datenbankänderungen ausführen, Upgrade-Wizards starten und die Webserver-Konfiguration prüfen. Per Kommandozeile erledigen Sie davon:

  • vendor/bin/typo3 cache:flush leert die Caches.
  • vendor/bin/typo3 upgrade:run startet die Upgrade-Wizards.
  • vendor/bin/typo3 extension:setup legt fehlende Tabellen und Spalten der installierten Extensions an.

Nicht mehr benötigte Spalten und Tabellen entfernen Sie erst, wenn alle Wizards durchgelaufen sind und ein Datenbank-Backup vorliegt. Zum Abschluss testen Sie Login und Redakteurs-Workflows.

Composer-Umstellung und Update auf TYPO3 14 LTS mit der IllusionFACTORY®

Läuft Ihre Installation noch im Classic Mode, übernimmt die IllusionFACTORY® als TYPO3 Gold Member die Umstellung auf Composer als festen Bestandteil des Updates auf TYPO3 14 LTS. Wir begleiten Sie von der Bestandsaufnahme bis zum Go-Live, sodass Sie nicht selbst zwischen Composer, Extensions und Server vermitteln müssen. Die Umstellung übernehmen wir als TYPO3 Update Agentur im Rahmen Ihres Projekts. Es gelten Aktionspreise je Ausgangsversion ab 1.200 € zzgl. MwSt. Der Endpreis nach individueller Prüfung steht fest, sobald wir Extensions und Sitepackage Ihrer Installation kennen. Wie sich die Preise zusammensetzen, zeigt die Seite TYPO3 Update Kosten. Wer wissen möchte, wo die eigene Installation liegt, kann den Preis für Ihre TYPO3-Version prüfen und uns die Installation anschließend zur Prüfung übermitteln.

FAQ

Braucht TYPO3 14 zwingend Composer?

Nein, nicht allein wegen TYPO3 14. TYPO3 14 schreibt Composer als Installationsart nicht vor. Dennoch spricht vieles dafür: Composer verwaltet Core, Extensions und Abhängigkeiten an einer Stelle und reproduzierbar. Updates und Deployments werden nachvollziehbarer, weil sich jeder Stand eindeutig festhalten lässt. Ob sich der Aufwand für Ihr Projekt lohnt, hängt vor allem von der Zahl und dem Zustand Ihrer Extensions ab. Eine Pflicht zur Umstellung ergibt sich aus TYPO3 14 selbst nicht.

Was ist der Unterschied zwischen Composer Mode und Classic Mode bei TYPO3?

Der Unterschied liegt darin, wie TYPO3 samt Extensions und Abhängigkeiten ins System kommt und verwaltet wird. Im Composer Mode verwaltet Composer Core, Extensions und PHP-Bibliotheken. Es prüft die Abhängigkeiten, bevor etwas installiert wird. Die Projektstruktur besteht aus composer.json, vendor/ und public/ als Document Root. Im Classic Mode kommt der Core als Archiv oder Symlink, Extensions werden per Extension Manager oder Upload eingespielt. Die Verzeichnisse typo3/ und index.php liegen direkt im Webroot. Einen Abgleich der Abhängigkeiten gibt es nicht, Konflikte zeigen sich erst im laufenden Betrieb.

Was verlangt TYPO3 14 in Bezug auf die composer.json?

TYPO3 14 verlangt für jede Extension eine gültige composer.json. Das gilt auch für das Sitepackage und für eigene Extensions. Die Datei ext_emconf.php ist dagegen deprecated. Fehlt die composer.json bei einer Extension, muss sie nachgerüstet werden. Das erhöht bei der Composer-Umstellung den Aufwand je Paket. Prüfen Sie deshalb vorab, welche Ihrer Pakete bereits eine composer.json mitbringen und bei welchen sie noch fehlt.

Warum sollte ich von der Classic-Mode-Installation auf Composer umsteigen?

Der Umstieg auf Composer lohnt sich vor allem, weil Updates nachvollziehbar werden. Jede Versionsänderung erscheint im Git-Diff und kann vor dem Livegang im Review kontrolliert werden. Das Update ist einfacher: Ein Befehl ersetzt die Dateikopie, und auf dem Zielsystem werden die Pakete einfach installiert. Außerdem laufen Core, Extensions und PHP-Bibliotheken in einem Werkzeug und einer composer.json zusammen, statt über Archive und Uploads verteilt zu sein. Das spart Handarbeit und reduziert Fehler beim Einspielen neuer Versionen.

Wie aktualisiere ich TYPO3 mit Composer auf eine neue Version?

Sichern Sie zuerst Dateien und Datenbank, arbeiten Sie in einer Testumgebung und nutzen Sie Git. Führen Sie Updates nie direkt auf dem Produktivsystem aus.

  • Innerhalb einer Hauptversion (z. B. 14.3.6 → 14.3.7): composer update "typo3/cms-*" -W aktualisiert alle Core-Pakete in einem Lauf.
  • Neue Hauptversion: Setzen Sie die Constraints der TYPO3-Pakete auf ^14.3 und führen Sie composer require aus.
  • PHP unverändert lassen: Klären Sie die PHP-Version vorab und testen Sie, erst dann folgt TYPO3.

Danach leeren Sie mit vendor/bin/typo3 cache:flush die Caches, starten mit vendor/bin/typo3 upgrade:run die Upgrade-Wizards und testen Frontend, Backend und Login.

Was tun bei Composer-Abhängigkeitskonflikten während des TYPO3-Updates?

Meldet Composer, dass die Anforderungen nicht auflösbar sind, findet es keine Versionskombination, die alle Constraints der composer.json erfüllt. Die Fehlermeldung nennt die blockierenden Pakete. Meist fehlt einer Extension die Freigabe für TYPO3 14, oder ihr Constraint ist zu eng. So gehen Sie vor: Mit composer why-not typo3/cms-core:^14.3 sehen Sie, welche Pakete die Zielversion blockieren. Mit composer why vendor/paket sehen Sie, wer ein Paket benötigt. Hängen Sie außerdem eine höhere Version des betroffenen Pakets an den composer require-Befehl an, z. B. helhum/typo3-console:^8.3 statt ^8.2.

Wie baue ich das Verzeichnis vendor/ nach einem Fehler neu auf?

Wenn vendor/ vom gesperrten Stand abweicht, etwa nach einem abgebrochenen Composer-Lauf oder manuellen Änderungen im Ordner, bauen Sie es neu auf. Löschen Sie das Verzeichnis mit rm -rf vendor/ und installieren Sie mit composer install alles frisch aus dem gesperrten Stand. Bereits durchgeführte Datenbank-Schritte bleiben dabei unberührt. Anschließend leeren Sie die Caches und führen vendor/bin/typo3 extension:setup aus, das fehlende Tabellen und Spalten anlegt. Prüfen Sie zum Schluss Frontend und Backend.

Wie gehe ich bei der Migration vom Classic Mode zu Composer Schritt für Schritt vor?

Stellen Sie zuerst Backup (Dateien und SQL-Export), Testumgebung und Git bereit. Dann gehen Sie so vor: Legen Sie ein neues Zielverzeichnis an und führen Sie composer create-project typo3/cms-base-distribution aus. Ergänzen Sie Core und Extensions per composer require vendor/paket:version; lokale Pakete wie das Sitepackage tragen Sie als Repository in der composer.json ein. Mit composer install bauen Sie vendor/ und public/ auf. Übernehmen Sie die Site-Konfiguration nach config/sites, die Systemeinstellungen nach config/system/settings.php sowie fileadmin und Datenbank. Stellen Sie den Document Root auf public/ und prüfen Sie Frontend und Backend. Erst nach erfolgreichem Test räumen Sie die Alt-Installation auf.

Wie lange dauert die Umstellung auf Composer?

Die Umstellung auf Composer kostet je nach Projektgröße einen bis mehrere Personentage. Den Rahmen setzen vor allem die Zahl und der Zustand Ihrer Extensions sowie die Server-Umgebung. Länger dauert es in diesen Fällen: Viele Extensions haben keine composer.json, sie muss nachgerüstet werden. Das Sitepackage oder eigene Extensions sind nicht an Composer angebunden. Lokale Anpassungen liegen direkt im Extension-Ordner und müssen sauber übertragen werden. Die Server-Umgebung muss erst angepasst werden. Erfassen Sie daher vorab alle Extensions samt Versionen.

Was kostet die Umstellung einer TYPO3-Installation auf Composer?

Der Preis richtet sich nach dem Aufwand, den Zahl und Zustand der Extensions, das Sitepackage und die Server-Umgebung verursachen. Wird die Umstellung als fester Bestandteil des Updates auf TYPO3 14 LTS von der IllusionFACTORY® übernommen, gelten Aktionspreise je Ausgangsversion ab 1.200 € zzgl. MwSt. Der Endpreis steht nach individueller Prüfung von Extensions und Sitepackage fest. Zusätzlich teurer wird es, wenn Extensions ohne Packagist-Paket nur als Pfad-Repository vorliegen oder lokale Anpassungen im Extension-Ordner gesichert und übertragen werden müssen.

Kann ich Extensions aus dem TYPO3 Extension Repository weiter nutzen, wenn ich auf Composer umstelle?

Ja, Extensions aus dem TYPO3 Extension Repository (TER) lassen sich weiter nutzen. Im Composer Mode installieren Sie sie jedoch nicht mehr per Extension Manager oder Archiv-Upload, sondern mit composer require vendor/paket:version. Die Pakete stammen in der Regel aus Packagist. Prüfen Sie je Extension: Gibt es ein Packagist-Paket oder nur ein Pfad-Repository? Ist die Extension für TYPO3 14 freigegeben? Liegen lokale Anpassungen im Extension-Ordner? Diese sichern Sie vor dem Löschen. Gibt es keine passende Version, prüfen Sie TER, Packagist und das Code-Repository des Autors oder suchen eine Alternative.

Ist das ELTS-Repository von TYPO3 nur per Composer verfügbar?

Ja. Das Repository für TYPO3 ELTS (Extended Long Term Support) ist nur per Composer erreichbar. Eine Installation im Classic Mode kann es nicht nutzen. ELTS liefert Sicherheitsupdates, wenn die kostenlose Pflege einer Version endet.

Besonders relevant ist das für TYPO3 12.4:

  • Der kostenlose Support endete am 30.04.2026.
  • ELTS läuft bis 30.04.2029, mit Partnerjahr bis 30.04.2030.
  • Ohne ELTS bleiben Installationen von den am 09.06.2026 veröffentlichten 14 Advisories ungepatcht, darunter 5 mit Schweregrad „High“.

Wer TYPO3 12 weiterbetreiben will, braucht daher eine Installation mit Composer. Stellen Sie im Classic Mode zuerst auf Composer um.

Wie verbessert Composer das Deployment einer TYPO3-Website?

Composer macht Deployments reproduzierbar. Die composer.lock hält fest, welche Version von Core, Extensions und Bibliotheken installiert ist. Liegt sie im Git-Repository, bringt composer install Test- und Live-System auf denselben Stand. Jede Versionsänderung erscheint im Git-Diff und lässt sich im Review prüfen, bevor sie live geht. Das Deployment besteht darin, den Code aus Git auszuliefern und auf dem Zielsystem die Pakete zu installieren. Die Pakete müssen nicht mehr einzeln hochgeladen werden.

Kann ich die Composer-Migration und das Update auf TYPO3 14 LTS in einem Schritt durchführen lassen?

Ja, beides läuft in einem Projekt und einem Auftrag, mit einem Ansprechpartner. Wir arbeiten dabei in klarer Reihenfolge: Zuerst wird die Installation auf Composer umgestellt und getestet, danach folgt das Update auf TYPO3 14.3 LTS. So lassen sich Fehler der Umstellung von Fehlern des Updates trennen. Tritt nach dem Update ein Problem auf, liegt es nicht mehr an der Installationsart.

Wichtig sind:

  • vollständiges Backup aus Dateien und SQL-Export
  • Testumgebung und Git für nachvollziehbare Änderungen
  • Prüfung der Extensions auf composer.json und Freigabe für v14

Wie unterstützt mich die IllusionFACTORY® bei der Composer-Migration und beim TYPO3-Update?

Die IllusionFACTORY® ist TYPO3 Gold Member und übernimmt die Umstellung auf Composer als festen Bestandteil des Updates auf TYPO3 14 LTS. Wir begleiten Sie von der Bestandsaufnahme bis zum Go-Live, sodass Sie nicht selbst zwischen Composer, Extensions und Server vermitteln müssen. Dazu gehören die Bestandsaufnahme von Extensions, Sitepackage und Server-Umgebung, die Migration auf Composer sowie das Update auf TYPO3 14.3 LTS mit Tests und Go-Live. Sie haben dabei einen Ansprechpartner für den gesamten Ablauf.