Die 20 häufigsten TYPO3-Fehler (und wie man sie behebt)

Egal, ob Sie ein Anfänger oder ein erfahrener TYPO3-Entwickler sind, es ist immer gut, Ihre Fähigkeiten im Umgang mit TYPO3-Fehlern und der Fehlersuche zu verbessern, um qualitativ hochwertige und produktive Arbeit zu leisten. Hier sind einige Tipps, Tricks und Tools zum Umgang mit TYPO3-Fehlern.

Die 20 häufigsten TYPO3-Fehler (und wie man sie behebt)

Ganz gleich, ob Sie neu mit TYPO3 arbeiten oder komplexe Enterprise-Projekte betreuen: Zu wissen, wie sich Fehler schnell erkennen und beheben lassen, ist entscheidend, um stabile und leistungsstarke Websites zu betreiben.

TYPO3 bietet leistungsstarke Werkzeuge für Fehlerbehandlung und Debugging. Ohne den richtigen Ansatz können jedoch selbst kleine Probleme eine Website zum Stillstand bringen. Von der bekannten Meldung „Oops, an error occurred“ bis hin zu Server-, Konfigurations- oder Extension-bezogenen Ausfällen lassen sich TYPO3-Fehler oft nur schwer nachvollziehen.

Mit einem klaren Verständnis dafür, wie TYPO3 Fehler verarbeitet und Probleme protokolliert, lassen sich die meisten Störungen effizient diagnostizieren und beheben. TYPO3 ist ein sicheres und flexibles CMS, aber wie jede Software wird es von Menschen entwickelt, und Fehler lassen sich nicht vollständig vermeiden.

Dieser Leitfaden führt Sie durch die häufigsten TYPO3-Fehler und zeigt Ihnen, wie Sie diese auf die richtige Weise beheben.

Bevor Sie konkrete Fehler beheben, ist es wichtig zu verstehen, wie TYPO3 mit Fehlern umgeht und warum sie nicht immer so angezeigt werden, wie Sie es erwarten.

Wie die TYPO3-Fehlerbehandlung funktioniert (Überblick)

TYPO3 verarbeitet Fehler durch eine Kombination aus:

  • PHP-Fehlerbehandlung
  • den internen Fehler- und Exception-Handlern von TYPO3
  • kontextbasierter Konfiguration (Umgebungsbewusstsein)

Je nach Konfiguration können Fehler im Frontend angezeigt, still im Hintergrund protokolliert oder durch benutzerdefinierte Exception-Handler verarbeitet werden.

TYPO3_CONTEXT erklärt (Development vs Production)

TYPO3 verwendet TYPO3_CONTEXT, um festzulegen, wie Fehler in unterschiedlichen Umgebungen behandelt werden:

  • Development: Fehler und Stack-Traces können angezeigt werden, um das Debugging zu erleichtern
  • Production: Fehler werden vor Nutzern verborgen und aus Sicherheitsgründen in Logs geschrieben

Dadurch kann sich dieselbe Codebasis in lokalen, Staging- und Live-Systemen unterschiedlich verhalten.

Warum Fehler im Frontend und Backend unterschiedlich aussehen

Frontend und Backend-Anfragen werden in TYPO3 unterschiedlich verarbeitet:

  • Frontend-Fehler werden oft durch den Content Object Exception Handler abgefangen, was zu Meldungen wie „Oops, an error occurred“ führt
  • Backend-Fehler liefern in der Regel mehr Details, vor allem in Development-Kontexten

Dadurch kann ein Frontend-Fehler vage wirken, obwohl in den Logs oder im Backend detaillierte Informationen vorhanden sind.

Sicherheitswarnung für die Produktivumgebung

Zeigen Sie auf einer Live TYPO3 Website niemals ausführliche Fehlermeldungen oder Stack-Traces an. Das Offenlegen von Fehlern in der Produktivumgebung kann sensible Systeminformationen preisgeben und Sicherheitsrisiken schaffen. Verlassen Sie sich stattdessen auf Logging und kontrollierte Debugging-Umgebungen.

Wichtigste Erkenntnis

Wenn Sie die kontextbasierte Fehlerbehandlung von TYPO3 verstehen, vermeiden Sie Rätselraten und können Probleme schneller debuggen, ohne die Sicherheit zu gefährden.

Beim Entwickeln mit TYPO3 hilft das Aktivieren der Fehleranzeige, Konfigurations-, Erweiterungs- oder Code-Probleme schnell zu identifizieren. Allerdings sollte die Sichtbarkeit von Fehlern immer von der Umgebung abhängen.

Fehleranzeige in TYPO3 aktivieren

Sie können die Fehlerausgabe in TYPO3 über die Datei LocalConfiguration.php steuern:

// typo3conf/LocalConfiguration.php

// Keine PHP-Fehlermeldungen anzeigen
$TYPO3_CONF_VARS['SYS']['displayErrors'] = '0';

// Fehlermeldungen mit dem registrierten TYPO3-Fehler-Handler anzeigen
$TYPO3_CONF_VARS['SYS']['displayErrors'] = '1';

// Standardverhalten: hängt von devIPmask ab
$TYPO3_CONF_VARS['SYS']['displayErrors'] = '-1';

Wichtig: Aktivieren Sie displayErrors = 1 niemals auf einer Live-Produktionsseite. Verwenden Sie es nur in Entwicklungs- oder kontrollierten Staging-Umgebungen.

Die Meldung „Ups, ein Fehler ist aufgetreten!“ erscheint, wenn TYPO3 während des Renderns von Frontend-Inhalten auf eine Exception stößt. Dieses Verhalten ist beabsichtigt und wird durch den TYPO3-Anwendungskontext sowie den Ausnahmehandler für Inhaltsobjekte gesteuert.

Im Produktionsmodus unterdrückt TYPO3 eine detaillierte Fehlerausgabe, um zu verhindern, dass sensible Systeminformationen für Besucher sichtbar werden. Anstatt Stack-Traces oder PHP-Fehler anzuzeigen, zeigt TYPO3 diese generische Meldung an und protokolliert den tatsächlichen Fehler intern.

Warum dieser Fehler auftritt

  • Während des Frontend-Renderings tritt eine PHP-Exception auf
  • Ein TypoScript, eine Extension oder ein Content-Element schlägt fehl
  • TYPO3 läuft im Produktionskontext
  • Der ContentObjectExceptionHandler ist aktiviert

Dies gilt für alle modernen TYPO3-Versionen, einschließlich TYPO3 9.5+.

So debuggen Sie „Ups, ein Fehler ist aufgetreten!“

Solution 1: TYPO3-Logdateien prüfen (Empfohlen)

Der schnellste und sicherste Weg, diesen Fehler zu debuggen, besteht darin, die Logdateien zu prüfen und nach dem Fehlercode zu suchen, der in der Meldung angezeigt wird.

Log-Speicherorte:

Ältere TYPO3-Versionen:

typo3temp/logs/typo3_[hash].log

Neuere TYPO3-Versionen:

typo3temp/var/log/typo3_[hash].log

Der Protokolleintrag enthält die vollständige Ausnahmemeldung und den Stack-Trace.

Solution 2: Exception Handler vorübergehend deaktivieren (nur Entwicklung)

Für lokale oder Staging-Umgebungen können Sie den Exception Handler deaktivieren, um detaillierte Fehler im Frontend anzuzeigen.

# TypoScript setup (development only)
config.contentObjectExceptionHandler = 0

Dies ermöglicht TYPO3, detaillierte Fehlermeldungen anstelle der generischen „Oops“-Meldung anzuzeigen.

Warnung: Deaktivieren Sie den Exception Handler niemals auf einer Live-Produktionsseite.

Fehlermeldung anpassen

Sie können die Frontend-Fehlermeldung anpassen, während der Exception Handler aktiviert bleibt:

config.contentObjectExceptionHandler = 1
config.contentObjectExceptionHandler.errorMessage = Something went
wrong. Please contact the site administrator. %s

Dies erhält die Sicherheit, während gleichzeitig die Benutzererfahrung verbessert wird.

Wichtige Erkenntnisse

  • „Oops, ein Fehler ist aufgetreten!“ ist eine schützende Frontend-Meldung, nicht der tatsächliche Fehler
  • Die tatsächliche Ursache wird immer protokolliert
  • Fehleranalyse zuerst über Logs, nicht über die Frontend-Ausgabe
  • Exception Handling nur in Entwicklungsumgebungen deaktivieren

Benutzerdefinierte Fehlerbehandlung in TYPO3

TYPO3 ermöglicht es Ihnen, benutzerdefinierte Error Handler und Exception Handler zu registrieren, wenn Sie zusätzliche Kontrolle darüber benötigen, wie Fehler verarbeitet oder protokolliert werden. Dies erfolgt in der Regel über eine benutzerdefinierte TYPO3 Extension und wird nur für fortgeschrittene Anwendungsfälle empfohlen.

Einen benutzerdefinierten Error Handler registrieren

Fügen Sie Folgendes in die Datei ext_localconf.php Ihrer Extension ein:

$GLOBALS['TYPO3_CONF_VARS']['SYS']['errorHandler'] =
\Vendor\Ext\Error\MyOwnErrorHandler::class;

$GLOBALS['TYPO3_CONF_VARS']['SYS']['debugExceptionHandler'] =
\Vendor\Ext\Error\MyOwnDebugExceptionHandler::class;

$GLOBALS['TYPO3_CONF_VARS']['SYS']['productionExceptionHandler'] =
\Vendor\Ext\Error\MyOwnProductionExceptionHandler::class;

TYPO3 verwendet automatisch den passenden Handler basierend auf dem Application Context.

Minimales Beispiel

namespace Vendor\Ext\Error;
use TYPO3\CMS\Core\Error\DebugExceptionHandler;
use Throwable;
class CustomExceptionHandler extends DebugExceptionHandler
{
public function echoExceptionWeb(Throwable $exception): void
{
// Custom logic (logging, alerts, integrations)
parent::echoExceptionWeb($exception);
}
}

Wichtiger Hinweis

Verwenden Sie benutzerdefinierte Error Handler nur, wenn das standardmäßige Logging von TYPO3 nicht ausreichend ist. Vermeiden Sie immer, detaillierte Fehlerausgaben in der Produktionsumgebung sichtbar zu machen.

Ein 500 interner Serverfehler in TYPO3 weist in der Regel auf ein serverseitiges Problem hin. Obwohl dieser Fehler durch mehrere Faktoren verursacht werden kann, ist eine häufige Frontend-Ursache eine falsche oder fehlende mod_rewrite-Konfiguration.

Häufige Ursachen

  • Falsche .htaccess Konfiguration
  • mod_rewrite nicht aktiviert
  • Falsche RewriteBase (besonders wenn TYPO3 in einem Unterverzeichnis installiert ist)
  • Probleme mit der PHP-Version oder dem Speicherlimit
  • Fatale Fehler, verursacht durch Extensions oder Konfigurationsänderungen

Schnelle Prüfung: Apache mod_rewrite

Stellen Sie sicher, dass mod_rewrite aktiviert und korrekt in Ihrer .htaccess Datei konfiguriert ist:

# Enable mod_rewrite
RewriteEngine On

# IMPORTANT:
# Use "/" if TYPO3 is installed in the web root
RewriteBase /

# Use this instead if TYPO3 is installed in a subdirectory
# RewriteBase /yourfolder

Nach der Aktualisierung der .htaccess Datei leeren Sie die TYPO3 Caches und laden Sie die Website erneut.

Was tun, wenn das Problem weiterhin besteht

  • PHP Error Logs und TYPO3-Logdateien auf fatale Fehler prüfen
  • PHP-Version und Speicherlimits überprüfen
  • Kürzlich installierte oder aktualisierte Extensions deaktivieren
  • Dateiberechtigungen und Eigentumsrechte überprüfen

Wichtige Erkenntnis

Ein 500-Fehler wird selten ausschließlich durch TYPO3 verursacht. Überprüfen Sie immer zuerst die Serverkonfiguration und die Logs, bevor Sie Änderungen an TYPO3-Einstellungen vornehmen.

Die Meldung „Keine TypoScript Template gefunden“ ist kein Systemfehler. Sie bedeutet lediglich, dass kein TypoScript Template der aktuellen Root-Seite zugewiesen ist.

Dies tritt häufig bei neuen Installationen auf oder wenn Templates versehentlich entfernt wurden.

So beheben Sie das Problem

  • Gehen Sie zu Web → Template
  • Wählen Sie Ihre Root-Seite aus
  • Erstellen oder bearbeiten Sie das TYPO3-Script-Template
  • Fügen Sie eine grundlegende TYPO3-Script-Konfiguration hinzu, zum Beispiel:
page = PAGE
page.10 = TEXT
page.10.value = Hello TYPO3!
  • Speichern Sie das Template und leeren Sie die Caches

Wichtige Erkenntnis

Diese Meldung weist auf eine fehlende Konfiguration hin, nicht auf ein defektes System. Sobald ein TypoScript Template der Root-Seite zugewiesen wird, wird die Website wieder normal gerendert.

TypoScript lernen beginnen

Wenn die TYPO3-Backend-Login-Seite nicht lädt, einen leeren Bildschirm anzeigt oder einen 500-Fehler zurückgibt, weist dies in der Regel auf einen fatalen PHP-Fehler oder eine Fehlkonfiguration hin. Dieses Problem tritt häufig nach Updates, Extension-Änderungen oder Änderungen an der Serverumgebung auf.

Häufige Ursachen

  • Installation oder Update einer Extension hat einen fatalen Fehler verursacht
  • PHP-Version stimmt nach einem TYPO3 Upgrade nicht überein
  • Allowed memory size exhausted
  • Beschädigte PackageStates.php Datei
  • Falsche Dateiberechtigungen oder Eigentümerrechte
  • Fehlende oder inkompatible PHP-Extensions

So beheben Sie das Problem

Step 1: TYPO3- und PHP-Logs prüfen

  • TYPO3-Logs:
    typo3temp/var/log/
  • PHP-Error-Logs (serverabhängig)

Die Fehler in diesen Logs zeigen in der Regel die genaue Ursache.

Step 2: kürzlich installierte Extensions deaktivieren

Wenn das Backend vollständig nicht zugänglich ist:

  • Bearbeiten Sie typo3conf/PackageStates.php
  • Setzen Sie den Status der problematischen Extension auf inactive
  • Leeren Sie die TYPO3-Caches (typo3temp/)

Step 3: PHP-Version und Speicher prüfen

  • Stellen Sie sicher, dass die PHP-Version zu den Anforderungen Ihrer TYPO3 Version passt
  • Erhöhen Sie bei Bedarf das PHP-Memory-Limit

Step 4: Dateiberechtigungen prüfen

  • TYPO3 muss in der Lage sein, die Verzeichnisse typo3temp/, var/ und public/ zu lesen und zu schreiben.

Wichtige Erkenntnis

Wenn die TYPO3 Backend Login-Seite nicht funktioniert, sollten Sie zuerst von einem serverseitigen Problem oder einer Extension-bezogenen Ursache ausgehen. Die Logs weisen fast immer auf die eigentliche Ursache hin.

Eine weiße Seite (leere Seite) in TYPO3 weist in der Regel auf einen fatalen PHP-Fehler hin, der unterdrückt wird, am häufigsten im Produktionsmodus. Dies kann das Frontend, das Backend oder beide betreffen.

Häufige Ursachen

  • Fataler PHP-Fehler bei deaktivierter Fehleranzeige
  • Inkompatible oder fehlerhafte TYPO3 Extension
  • PHP-Version stimmt nach einem TYPO3-Update nicht überein
  • Speicherlimit erschöpft
  • Fehler im TypoScript oder im Fluid Template

So beheben Sie das Problem (Schnelle Schritte)

  • TYPO3 und Server-Logs prüfen
    • typo3temp/var/log/
    • Webserver-Error-Logs (Apache / Nginx)
    • TYPO3 Backend → SystemLog (falls zugänglich)

Fehleranzeige vorübergehend aktivieren (nur Entwicklung)

config.contentObjectExceptionHandler = 0
  • Oder das Debug-Preset im Install Tool aktivieren.
  • Kürzlich installierte Extensions deaktivieren
    • Bearbeiten Sie typo3conf/PackageStates.php
    • Setzen Sie die verdächtige Extension auf inactive
    • Caches leeren
  • PHP-Version überprüfen
    • Stellen Sie sicher, dass die PHP-Version zu den TYPO3 Core Anforderungen passt.

Speicherlimit erhöhen (falls erforderlich)

$TYPO3_CONF_VARS['SYS']['setMemoryLimit'] = '256M';

Wichtige Erkenntnis

Eine leere Seite bedeutet fast nie, dass nichts passiert. TYPO3 schützt das System, indem ein fataler Fehler ausgeblendet wird. Logs und Debug-Modus zeigen immer die tatsächliche Ursache.

Ein fataler Fehler nach der Installation oder Aktualisierung einer TYPO3 Extension bedeutet in der Regel, dass die Extension mit Ihrer TYPO3 oder PHP-Version nicht kompatibel ist oder eine inkompatible Änderung eingeführt wurde. Dadurch können das Frontend, das Backend oder beide nicht mehr zugänglich sein.

So beheben Sie das Problem (Schnelle Wiederherstellung)

TYPO3 v6.2 und neuer (empfohlene Methode)

  1. Öffnen Sie typo3conf/PackageStates.php
  2. Suchen Sie den Extension-Key, der das Problem verursacht hat
  3. Setzen Sie den Status auf inactive
  4. Speichern Sie die Datei
  5. Caches leeren:
    • Löschen Sie typo3temp/var/cache/

Dies stellt in den meisten Fällen den Zugriff sofort wieder her.

Ältere TYPO3-Versionen (nur Legacy-Projekte)

TYPO3 ≤ 4.7

  • Öffnen Sie typo3conf/localconf.php

Entfernen Sie den Extension-Key aus:

$TYPO3_CONF_VARS['EXT']['extList']
  • Löschen Sie gecachte Dateien in typo3conf/

TYPO3 6.0

  • Öffnen Sie typo3conf/LocalConfiguration.php

Entfernen Sie die Extension aus:
‘extListArray’

  • Leeren Sie typo3temp/Cache

Wichtige Erkenntnis

Wenn TYPO3 direkt nach der Installation oder Aktualisierung einer Extension nicht mehr funktioniert, deaktivieren Sie zuerst die Extension. Versionsinkompatibilität tritt deutlich häufiger auf als Core-Probleme.

In TYPO3 (und jedem PHP-basierten System) kann gelegentlich ein Memory-Exhaustion-Fehler auftreten, wie zum Beispiel:

 

Fatal error: Allowed memory size of 278347977 bytes exhausted 
(tried to allocate 95 bytes)
in /typo3/sysext/core/Classes/Database/DatabaseConnection.php

 

Dieser Fehler zeigt an, dass PHP sein konfiguriertes Speicherlimit erreicht hat, während TYPO3 eine Anfrage verarbeitet hat. Dies kann sowohl das Frontend als auch das Backend betreffen und in einigen Fällen den Zugriff auf das TYPO3 Backend vollständig blockieren.

Häufige Ursachen

  • Große oder ineffiziente Datenbankabfragen
  • Ressourcenintensive Extensions oder falsch konfigurierte Plugins
  • Beschädigte Caches oder temporäre Dateien
  • Niedriges PHP-Speicherlimit auf dem Server
  • Probleme mit der Backend-Benutzersitzung oder Workspace-Konfiguration

Schnelle Lösungen (Sofortige Wiederherstellung)

Versuchen Sie die folgenden Schritte der Reihe nach:

  1. TYPO3-Caches leeren
    • Admin Tools → Maintenance → Flush Cache
  2. Temporäre Dateien entfernen
    • Löschen Sie das Verzeichnis /typo3temp/ manuell
  3. Temporäre Assets entfernen
    • Admin Tools → Maintenance → Remove Temporary Assets
  4. Backend-Benutzer zurücksetzen
    • Erstellen Sie einen neuen Backend-Benutzer
    • Löschen oder deaktivieren Sie den betroffenen Benutzeraccount

Konfigurationsbasierte Lösungen

Wenn das Problem weiterhin besteht, wenden Sie die folgenden temporären Konfigurationsanpassungen an:

 

// typo3conf/LocalConfiguration.php
$TYPO3_CONF_VARS['SYS']['lockingMode'] = 'disable';
$TYPO3_CONF_VARS['SYS']['setMemoryLimit'] = '256M';

 

Diese Einstellungen helfen, das System zu stabilisieren, ersetzen jedoch keine korrekte serverseitige Speicher-Konfiguration.

Empfohlene langfristige Lösung

  • Erhöhen Sie das PHP-Speicherlimit über php.ini, .htaccess oder das Hosting-Panel
  • Identifizieren Sie speicherintensive Extensions oder benutzerdefinierten Code
  • Überprüfen Sie Datenbankabfragen und geplante Tasks
  • In Produktionsumgebungen sollte ein Serveradministrator einbezogen werden, um eine stabile Speicherzuweisung sicherzustellen

Wichtige Erkenntnis

Memory-Exhaustion-Fehler sind in der Regel Symptome, nicht die eigentliche Ursache. Während TYPO3 schnelle Wiederherstellungsoptionen bietet, hängt die langfristige Stabilität von einer korrekten Serverkonfiguration, optimierten Extensions und sauberen Caches ab.

Fehler nach einem TYPO3 Update oder Major Upgrade treten sehr häufig auf und werden meist durch Versionsinkompatibilitäten, veraltete APIs oder nicht vollständig ausgeführte Upgrade-Schritte verursacht. Diese Probleme können das Frontend, das Backend oder sogar das gesamte TYPO3-System blockieren.

Typische Symptome

  • Backend-Login funktioniert, aber Seiten stürzen ab
  • Frontend zeigt „Oops, ein Fehler ist aufgetreten“
  • Weiße Seite nach dem Upgrade
  • Extensions funktionieren plötzlich nicht mehr
  • Viele Deprecation- oder PHP-Fehler

Häufigste Ursachen

  • Inkompatible Extensions, die nicht für die neue TYPO3-Version aktualisiert wurden
  • Upgrade-Wizards im Install-Tool wurden übersprungen
  • PHP-Version passt nicht (zu alt oder zu neu)
  • Datenbankschema wurde nicht aktualisiert
  • Veraltete TypoScript-, Fluid- oder PHP-APIs
  • Zwischengespeicherte Konfigurationen aus der alten Version

Sofortige Checkliste zur Fehlerbehebung (Zuerst durchführen)

  1. TYPO3-Upgrade-Assistenten ausführen
    • Admin-Tools → Upgrade → Alle Assistenten ausführen
  2. Datenbankschema aktualisieren
    • Admin-Tools → Wartung → Datenbank analysieren
  3. Alle Caches leeren
    • Admin-Tools → Wartung → TYPO3 und PHP-Caches leeren
    • Bei Bedarf den Ordner /typo3temp/ manuell entfernen
  4. Fehlerhafte Erweiterungen deaktivieren
    • typo3conf/PackageStates.php öffnen

Setzen Sie problematische Extensions auf:
'active' => false

PHP-Kompatibilität prüfen

Stellen Sie sicher, dass Ihre PHP-Version zu den TYPO3-Core-Anforderungen passt.

Häufiger Fehler:

TYPO3 wird aktualisiert, aber eine alte PHP-Version bleibt bestehen (oder PHP wird zu früh aktualisiert).

Überprüfen Sie immer die offiziellen TYPO3-Systemanforderungen für Ihre Version.

Fehler korrekt debuggen

Aktivieren Sie Debugging vorübergehend nur im Development Context:

// typo3conf/LocalConfiguration.php

$TYPO3_CONF_VARS['SYS']['displayErrors'] = 1;

Prüfen Sie außerdem die Logs:

  • typo3temp/var/log/
  • Fehlerprotokolle des Webservers
  • Admin-Tools → Protokoll

Deprecation-Warnungen sind ein Signal

Nach Upgrades steigt die Anzahl der Deprecation-Logs oft stark an. Das bedeutet in der Regel:

  • Alte TypoScript-Syntax
  • Veraltete Extensions
  • Benutzerdefinierter PHP-Code, der entfernte APIs verwendet

Wenn diese Probleme frühzeitig behoben werden, lassen sich fatale Fehler in zukünftigen TYPO3-Versionen vermeiden.

Wichtige Erkenntnis

Ein TYPO3 Upgrade ist nicht nur ein Core-Update, sondern eine systemweite Änderung. Die meisten Fehler nach einem Upgrade entstehen durch Extensions, PHP-Versionen oder übersprungene Bereinigungsschritte, nicht durch TYPO3 selbst.

Führen Sie Upgrades systematisch durch: Core → Extensions → Datenbank → Caches → Tests.

SMTP-Fehler in TYPO3 treten in der Regel auf, wenn System-E-Mails fehlschlagen, etwa bei Passwort-Zurücksetzungen, Formularübermittlungen, Benachrichtigungen oder Scheduler-Mails, die einfach nicht ankommen.

Häufige Symptome

  • Keine E-Mails werden von TYPO3 versendet
  • Das Backend zeigt mailbezogene Exceptions
  • Formulare werden gesendet, aber E-Mails kommen nie an
  • SMTP-Authentifizierungs- oder Verbindungsfehler in den Logs

Häufigste Ursachen

  • Falscher SMTP-Host oder Port
  • Falscher Verschlüsselungstyp (TLS / SSL)
  • Ungültiger Benutzername oder Passwort
  • Mail-Provider blockiert die Verbindung
  • Firewall- oder Hosting-Einschränkungen

Schnelle Lösung: SMTP-Konfiguration prüfen

Überprüfen und aktualisieren Sie Ihre SMTP-Einstellungen in:

typo3conf/LocalConfiguration.php

'MAIL' => [
'transport' => 'smtp',
'transport_smtp_server' => 'your.smtp.provider:PORT',
'transport_smtp_encrypt' => 'tls', // or ssl
'transport_smtp_username' => 'username@example.com',
'transport_smtp_password' => 'PASSWORD',
'defaultMailFromAddress' => 'username@example.com',
'defaultMailFromName' => 'Your Site Name',
],

Debugging-Tipps

  • Testen Sie mit einem echten SMTP-Provider (nicht localhost)
  • Prüfen Sie die TYPO3-Logs und Server-Mail-Logs
  • Versuchen Sie, eine E-Mail über Install Tool → Test E-Mail zu senden
  • Stellen Sie sicher, dass Ihr Hosting-Provider ausgehendes SMTP erlaubt

Wichtige Erkenntnis

SMTP-Fehler in TYPO3 sind in etwa 90 % der Fälle Konfigurationsprobleme. Sobald Host, Port, Verschlüsselung und Zugangsdaten korrekt gesetzt sind, funktioniert der E-Mail-Versand stabil.

TYPO3 verwendet ImageMagick oder GraphicsMagick für die Bildverarbeitung (Größenänderung, Zuschneiden, Vorschauen). Fehler treten meist auf, wenn TYPO3 die Binary-Datei nicht finden kann oder das Tool auf dem Server falsch konfiguriert ist.

Häufige Symptome

  • Bilder werden nicht angezeigt oder nicht skaliert
  • Backend-Bildvorschauen fehlen
  • Fehler beim Bild-Upload
  • FAL oder Thumbnail-Generierung schlägt fehl

Häufigste Ursachen

  • Falscher ImageMagick- / GraphicsMagick-Pfad
  • Binary ist auf dem Server nicht installiert
  • Server verwendet GraphicsMagick, aber TYPO3 erwartet ImageMagick
  • Berechtigungs- oder Ausführungsprobleme

Schnelle Lösung: GFX-Konfiguration prüfen

Überprüfen und passen Sie die ImageMagick-Einstellungen in folgender Datei an:

typo3conf/LocalConfiguration.php

 

$TYPO3_CONF_VARS['GFX'] = [
'gdlib_2' => '1',
'im_path' => '/usr/bin/',
'im_path_lzw' => '/usr/bin/',
'im_version_5' => 'gm', // use 'im' for ImageMagick, 'gm' for GraphicsMagick
'png_truecolor' => '1',
'gif_compress' => '1',
'imagefile_ext' => 'gif,jpg,jpeg,png,pdf,webp',
];

 

Stellen Sie sicher, dass der Pfad mit dem Ort übereinstimmt, an dem ImageMagick oder GraphicsMagick tatsächlich auf Ihrem Server installiert ist.

Debugging-Tipps

  • Führen Sie auf dem Server which convert oder which gm aus
  • Verwenden Sie Tool installieren → Bildverarbeitung, um die Konfiguration zu testen
  • Prüfen Sie, ob Ihr Hosting-Provider Bildverarbeitungs-Binaries unterstützt
  • Stellen Sie sicher, dass im_version_5  korrekt gesetzt ist (im vs gm)

Wichtige Erkenntnis

Bildbezogene TYPO3-Fehler sind fast immer serverseitige Probleme, keine TYPO3-Bugs. Sobald Binary-Datei und Pfad korrekt konfiguriert sind, funktioniert die Bildverarbeitung stabil.

TYPO3-Deprecation-Logs helfen dabei, veraltete APIs und Konfigurationen zu identifizieren, die in zukünftigen Versionen nicht mehr funktionieren werden. In TYPO3 9+ kann jedoch eine falsch konfigurierte Deprecation-Logging-Einstellung dazu führen, dass Logdateien überflutet werden, die Performance beeinträchtigt wird und Festplattenspeicher stark beansprucht wird, besonders auf Produktionssystemen.

Häufige Symptome

  • Sehr große Logdateien, die schnell anwachsen
  • Performance-Verlangsamung
  • Warnungen wegen fehlendem Speicherplatz
  • Logs sind gefüllt mit Core: Deprecation Meldungen

Warum das passiert

  • Deprecation-Logging ist in der Produktionsumgebung aktiviert
  • Extensions verwenden veraltete APIs
  • TYPO3 wurde aktualisiert, ohne Extensions zu aktualisieren
  • Logging-Level ist nicht eingeschränkt

TYPO3 ≤ v8: Deprecation-Log-Einstellung

$GLOBALS['TYPO3_CONF_VARS']['SYS']['enableDeprecationLog'] = '1';

TYPO3 ≥ v9: Deprecation-Logging-Steuerung

Deprecation-Logging ist in TYPO3 9+ standardmäßig deaktiviert und wird über das Logging Framework gesteuert.

Um Deprecation-Log-Fluten zu deaktivieren:

$GLOBALS['TYPO3_CONF_VARS']['LOG'] = [
'TYPO3' => [
'CMS' => [
'deprecations' => [
'writerConfiguration' => [
\TYPO3\CMS\Core\Log\LogLevel::NOTICE => [
\TYPO3\CMS\Core\Log\Writer\FileWriter::class
=> [
'disabled' => true,
],
],
],
],
],
],
];

Bewährte Vorgehensweise (Empfohlen)

  • Deprecation-Logs nur in der Development-Umgebung aktivieren
  • Deprecation-Logging niemals in der Produktionsumgebung aktivieren
  • Logs als Upgrade-Checkliste verwenden, nicht als permanente Einstellung
  • Veraltete APIs korrigieren, anstatt sie langfristig zu unterdrücken

Schnelles Aktivieren (nur Entwicklung)

Sie können Deprecation-Logs vorübergehend aktivieren über:

Install Tool → Configuration Presets → Development

Wichtige Erkenntnis

Deprecation-Logs sind Upgrade-Werkzeuge, keine Runtime-Logs. Wenn Ihre Logs in TYPO3 9+ überflutet werden, handelt es sich um ein Konfigurationsproblem, nicht um einen TYPO3-Fehler.

TypoScript-Fehler erzeugen nicht immer klare PHP-ähnliche Exceptions. Ein einzelner Syntaxfehler, eine überschriebene Konstante oder eine falsche Bedingung kann das Rendering stillschweigend beeinträchtigen, besonders im Frontend.

1. TypoScript-Konstanten prüfen

Verwenden Sie dies, um aufgelöste Werte zu überprüfen und unerwartete Überschreibungen zu erkennen.

Schritte:

  • Gehen Sie zu Web → Template → TypoScript Object Browser
  • Wählen Sie Constants
  • Überprüfen Sie ersetzte Werte und fehlende Konstanten

2. TypoScript Setup auf Syntaxfehler prüfen

TYPO3 kann grundlegende Syntaxprobleme im Setup hervorheben.

Schritte:

  • Gehen Sie zu Web → Template → TypoScript Object Browser
  • Wählen Sie Setup
  • Achten Sie auf Warnungen oder ungültige Konfigurationsblöcke

3. Template Analyzer verwenden (Zuverlässigste Methode)

Das ist der schnellste Weg, um herauszufinden, wo in TypoScript ein Fehler auftritt.

Schritte:

  • Gehen Sie zu Web → Template → Template Analyzer
  • Klicken Sie auf „View the complete TS Listing“
  • Überprüfen Sie Zeilennummern und die zusammengeführte TypoScript-Ausgabe auf Fehler

4. Debugging über das Frontend Admin Panel (Optional)

Nützlich, wenn Probleme nur auf bestimmten Seiten auftreten.

config.admPanel = 1

  • Öffnen Sie das Frontend als Administrator.
  • Verwenden Sie Admin Panel → TypoScript, um die gerenderte Konfiguration, Abfragen und Fehler zu überprüfen.

Wann ein TYPO3-Syntaxproblem vermutet werden sollte

  • Leere Bereiche oder fehlende Inhalte
  • Änderungen werden auch nach dem Cache-Leeren nicht übernommen
  • Fehler treten nur auf bestimmten Seiten oder in bestimmten Sprachen auf

Probleme mit der Datenbankverbindung verhindern in der Regel, dass sowohl das Frontend als auch das Backend geladen werden, und führen häufig zu folgenden Fehlermeldungen:

  • „TYPO3 Exception: Database connection failed“
  • „No database selected“
  • Leere Seite nach Installation oder Migration

Häufige Ursachen

  • Falsche Datenbank-Anmeldeinformationen
  • Datenbankserver läuft nicht oder ist unerreichbar
  • Falscher DB-Host oder Socket (besonders bei Docker / Cloud-Setups)
  • Fehlende Datenbank oder unzureichende Benutzerberechtigungen
  • Umgebungsabweichungen nach Bereitstellung oder Migration

Schnelle Überprüfungen (Zuerst durchführen)

  1. Datenbank-Anmeldeinformationen überprüfen
    • Datei: typo3conf/LocalConfiguration.php
    • Überprüfen Sie:
      • host
      • dbname
      • user
      • password
      • port / unix_socket
  2. Datenbank-Serverstatus prüfen
    • Stellen Sie sicher, dass MySQL/MariaDB läuft
    • Testen Sie die Verbindung manuell mit CLI oder einem DB-Client
  3. Bestätigen Sie, dass die Datenbank existiert
    • Die Datenbank muss erstellt werden, bevor TYPO3 eine Verbindung herstellen kann
    • Der Benutzer muss vollständige Berechtigungen auf dieser Datenbank haben

TYPO3-spezifische Lösungen

  • Führen Sie erneut das Install Tool → Database Analyzer aus
  • Leeren Sie nach der Behebung der Anmeldeinformationen die Caches:
    • Entfernen Sie typo3temp/var/cache/*
  • Überprüfen Sie den Umgebungs-Kontext:
    • TYPO3_CONTEXT=Production|Development

Wann dieser Fehler normalerweise auftritt

  • Nach einer Servermigration oder Hosting-Änderung
  • Nach einem TYPO3-Update / Upgrade
  • Falsche Docker- oder CI/CD-Deployment-Konfiguration
  • Falsche .evn-Datei oder Umgebungsvariablen-Konfiguration

Cache-Korruption gehört zu den häufigsten Ursachen dafür, dass eine TYPO3-Website plötzlich nicht mehr funktioniert, zum Beispiel nach:

  • Updates oder Deployments
  • Installation oder Entfernung von Extensions
  • Änderungen an TypoScript oder Fluid

Typische Symptome:

  • Das Frontend zeigt alte oder fehlerhafte Inhalte
  • Das Backend verhält sich inkonsistent
  • Zufällige Fehler, die nach dem Leeren des Caches verschwinden

Häufige Ursachen

  • Unterbrochenes Deployment oder Cache-Warmup
  • Fehlerhaftes TypoScript oder Fluid, das zuvor gecacht wurde
  • Extension-Update ohne Cache-Leerung
  • Dateiberechtigungsprobleme in typo3temp/
  • Opcode-Cache (OPcache) wurde nicht zurückgesetzt

Schnelle Lösungen

  1. TYPO3-Caches über das Backend leeren
    • Admin Tools → Maintenance → Flush all caches
  2. Cache-Ordner manuell leeren
    • Löschen Sie:
      • typo3temp/var/cache/
      • typo3temp/var/cache/ (bei case-sensitive Systemen beachten)
  3. System-Cache leeren
    • Admin Tools → Maintenance → Remove Temporary Assets

Wenn das Backend nicht zugänglich ist

  • Entfernen Sie manuell:
    • typo3temp/
  • Laden Sie anschließend das Backend neu und leeren Sie die Caches korrekt.

Erweiterte Prüfungen

  • Überprüfen Sie die Dateiberechtigungen für:
    • typo3temp/
    • var/
  • PHP neu starten oder OPcache leeren, falls aktiviert
  • Logs prüfen auf gecachte fatale Fehler

Wann dieses Problem typischerweise auftritt

  • Nach TYPO3-Core- oder Extension-Updates
  • Nach CI/CD-Deployments
  • Bei Shared-Hosting oder Docker-Setups

Incorrecte Datei- oder Ordnerberechtigungen in TYPO3 Falsche Datei- oder Ordnerberechtigungen können dazu führen, dass TYPO3 still fehlschlägt oder sich unvorhersehbar verhält, besonders bei Shared Hosting, Docker oder CI/CD-Deployments.

Häufige Symptome

  • Backend-Login schlägt fehl oder lädt nur teilweise
  • Cache kann nicht geschrieben oder geleert werden
  • Extensions lassen sich nicht installieren oder aktualisieren
  • Fehler wie:
    • “Failed to write file”
    • “Permission denied”
    • Leere Seite nach einem Deployment

Kritische TYPO3-Verzeichnisse, die beschreibbar sein müssen

Stellen Sie sicher, dass der Webserver-Benutzer Lese und Schreibzugriff auf folgende Verzeichnisse hat:

  • var/
  • typo3temp/
  • public/fileadmin/
  • config/ (mindestens Leserechte)

Schnelle Lösung (Linux / Hosting)

# Richtigen Eigentümer setzen (Beispiel)
chown -R www-data:www-data var typo3temp public/fileadmin

# Verzeichnisberechtigungen setzen
find var typo3temp public/fileadmin -type d -exec chmod 775 {} \;

# Dateiberechtigungen setzen
find var typo3temp public/fileadmin -type f -exec chmod 664 {} \;

(Passen Sie www-data entsprechend Ihrer Serverkonfiguration an.)

Docker-spezifische Probleme

Häufige Ursachen:

  • Volume-Mounts überschreiben Berechtigungen
  • UID/GID-Unterschied zwischen Host und Container
  • Read-only-Dateisysteme

Lösungen:

  • Container-User-UID mit der Host-UID abgleichen
  • Vermeiden, dass var/ und typo3temp/ als read-only gemountet werden
  • Container neu bauen, nachdem Berechtigungen geändert wurden

So prüfen Sie Berechtigungsprobleme

  • TYPO3-Logs prüfen var/blog/
  • Webserver-Error-Logs prüfen
  • Versuchen Sie den Cache zu leeren – wenn dies fehlschlägt, sind die Berechtigungen wahrscheinlich falsch

Best Practice (Prävention)

  • Berechtigungen korrigieren, bevor Extensions installiert werden
  • Berechtigungsprüfungen in Deployment-Skripte integrieren
  • TYPO3 in der Produktionsumgebung niemals als root ausführen

Dieses Problem wird bereits im Blog behandelt und kann auf drei Arten gelöst werden, abhängig von Ihrer TYPO3-Version und Systemkonfiguration.

TYPO3 ≤ v8 (LocalConfiguration.php)

Konfigurieren Sie eine statische 404-Seite direkt:

$TYPO3_CONF_VARS['FE']['pageNotFound_handling'] = '/index.php?id=12';

$TYPO3_CONF_VARS['FE']['pageNotFound_handling_statheader'] = 'HTTP/1.1 404 Not Found';

TYPO3 ≥ v9 (Site Management – Empfohlen)

Konfigurieren Sie die 404-Behandlung pro Website und Sprache:

  1. Gehen Sie zu Site Management → Sites
  2. Bearbeiten Sie Ihre Website → Error Handling
  3. Setzen Sie:
    • Error Code: 404
    • Handler: Show Content From Page
    • Wählen Sie Ihre 404-Seite

Dies stellt korrekte Statuscodes sowie mehrsprachige Verarbeitung sicher.

Advanced: PHP-basierter benutzerdefinierter 404-Handler

Verwenden Sie diese Methode, wenn Sie eine logikbasierte Behandlung benötigen (z. B. Weiterleitungen oder Umgebungsprüfungen):

  • Konfigurieren Sie errorHandler=PHP in config.yaml
  • Implementieren Sie PageErrorHandlerInterface in einer benutzerdefinierten Klasse

Häufige Fehlkonfigurations-Symptome

  • Die 404-Seite gibt 200 OK zurück
  • Falsche Sprachversion der 404-Seite wird angezeigt
  • Weiterleitungsschleife anstelle einer 404-Seite
  • Eine existierende Seite zeigt trotzdem 404

Schnelle Checkliste zur Fehlerbehebung

  • HTTP-Status in den Browser-Developer-Tools prüfen
  • Website- und Sprachkonfiguration überprüfen
  • Sicherstellen, dass die Root-Seite korrekt gesetzt ist
  • Nach Änderungen die TYPO3-Caches leeren

Diese Konfiguration deckt grundlegende, moderne und erweiterte 404-Behandlung in TYPO3 korrekt ab.

Eine PHP-Version oder Extension-Inkompatibilität ist ein häufiger Grund, warum TYPO3 nach einem Update, Upgrade oder Serverwechsel plötzlich nicht mehr funktioniert. TYPO3 stellt strenge Anforderungen an PHP, und selbst eine kleine Abweichung kann zu schwerwiegenden Fehlern oder einer leeren Seite führen.

Häufige Symptome

  • TYPO3 Backend oder Frontend lädt nicht
  • Weißer Bildschirm nach Update oder Deployment
  • Schwerwiegende PHP-Fehler während der Installation oder des Upgrades
  • CLI-Befehle (Composer, Scheduler) schlagen fehl

Warum das passiert

  • Der Server verwendet eine nicht unterstützte PHP-Version für Ihren TYPO3 Core
  • Erforderliche PHP Extensions fehlen oder sind deaktiviert
  • Die PHP-CLI-Version unterscheidet sich von der vom Webserver verwendeten PHP-Version

So beheben Sie das Problem

  1. PHP-Version-Kompatibilität prüfen
    Stellen Sie sicher, dass Ihre TYPO3-Version die installierte PHP-Version unterstützt.
  2. Erforderliche PHP Extensions überprüfen
    Stellen Sie sicher, dass wichtige Extensions wie intl, mbstring, pdo_mysql, zip, gd/imagick und openssl aktiviert sind.
  3. PHP im TYPO3 Install Tool prüfen
    Gehen Sie zu Admin Tools → Environment → PHP Status und beheben Sie alle gemeldeten Probleme.
  4. CLI und Web-PHP-Versionen angleichen
    Stellen Sie sicher, dass php -v (CLI) mit der vom Apache oder PHP-FPM verwendeten PHP-Version übereinstimmt.
  5. Dienste nach Änderungen neu starten
    Starten Sie PHP-FPM und den Webserver neu, damit die Änderungen korrekt übernommen werden.

Tipp

Wenn TYPO3 unmittelbar nach einem Update oder Serverwechsel nicht mehr funktioniert, prüfen Sie immer zuerst die PHP-Kompatibilität. Dieses Problem wird häufig fälschlicherweise als TYPO3-Core oder Extension-Fehler interpretiert.

Wenn die Protokollierung in TYPO3 nicht funktioniert, werden Fehler stillschweigend ignoriert, was die Fehlersuche verlangsamt und frustrierend macht. Dies ist in der Regel auf Fehlkonfigurationen, fehlende Schreibberechtigungen oder deaktivierte Protokollschreiber zurückzuführen.

Häufige Symptome

  • Keine Einträge in Systemverwaltung → Protokoll
  • Leere Log-Dateien in typo3temp/var/log/
  • Fehler werden auf dem Bildschirm angezeigt, aber nicht protokolliert
  • Deprecation-, Syslog- oder Extension-Logs fehlen

Warum das passiert

  • Logging-Writer sind nicht konfiguriert oder deaktiviert
  • Log-Verzeichnisse sind nicht beschreibbar
  • TYPO3 läuft im Produktionskontext mit eingeschränktem Logging
  • PHP- oder serverseitiges Logging überschreibt das TYPO3-Logging
  • Falsche Namespace-Konfiguration für benutzerdefinierte Logs

So beheben Sie das Problem

  1. TYPO3 Context prüfen
    Stellen Sie sicher, dass Sie sich im richtigen Context befinden:
    • Development → ausführliches Logging
    • Production → standardmäßig eingeschränktes Logging
  2. Berechtigungen des Log-Verzeichnisses prüfen
    Stellen Sie sicher, dass typo3temp/var/log/ existiert und vom Webserver-Benutzer beschreibbar ist.
  3. FileWriter Logging aktivieren
    Stellen Sie sicher, dass Log-Writer in der LocalConfiguration.php konfiguriert sind:
    • FileWriter für dateibasiertes Logging
    • SyslogWriter bei Verwendung von System-Logs
  4. Logs in Admin Tools prüfen
    Gehen Sie zu Systemverwaltung → Protokoll, um zu prüfen, ob das Backend-Logging aktiv ist.
  5. PHP-Fehler-Logging prüfen
    Stellen Sie sicher, dass das PHP-Fehler-Logging aktiviert ist und TYPO3-Logs nicht unterdrückt werden.
  6. Logging manuell testen
    Lösen Sie bewusst einen bekannten Fehler oder Log-Eintrag aus, um zu prüfen, ob Logs korrekt geschrieben werden.

Tipp

Wenn TYPO3 „still“ wirkt, prüfen Sie immer zuerst die Dateiberechtigungen. Logging-Probleme werden häufig durch den Server verursacht und nicht durch TYPO3 selbst.

JavaScript-Fehler können die TYPO3 Frontend Funktionalität vollständig beeinträchtigen, Menüs funktionieren nicht mehr, Inhalte werden nicht geladen oder Seiten werden nur teilweise dargestellt.

Häufige Symptome

  • Weißes oder eingefrorenes Frontend-UI
  • Slider, Menüs oder Formulare reagieren nicht
  • Konsole zeigt rote Fehler im Browser DevTools
  • Probleme treten nur nach Template- oder Extension-Änderungen auf

Häufige Ursachen

  • JavaScript-Konflikte zwischen Extensions oder Templates
  • Fehlende oder falsch geladene JS-Dateien
  • TYPO3 Update hat erforderliche JS-Bibliotheken verändert
  • Inline-JS-Fehler aus Fluid Templates
  • Drittanbieter-Skripte (Cookie-Consent, Analytics, CMPs)

So beheben Sie das Problem

  1. Öffnen Sie die Browser-Entwicklertools → Konsole und identifizieren Sie den ersten Fehler (Ursache).
  2. Prüfen Sie den Registerkarte „Netzwerk“ auf fehlende oder blockierte JS-Dateien (404 / 403).
  3. Deaktivieren Sie kürzlich hinzugefügte Extensions oder benutzerdefiniertes JS.
  4. Leeren Sie den TYPO3 und Browser-Cache.
  5. Stellen Sie sicher, dass JS in der richtigen Reihenfolge geladen wird (insbesondere bei jQuery-basierten Skripten).
  6. Testen Sie mit Produktions vs. Entwicklungsumgebung, um Minifizierungsprobleme auszuschließen.

Tipp: Ein einzelner JavaScript-Fehler kann alle nachfolgenden Skripte an der Ausführung hindern. Beheben Sie Fehler immer von oben nach unten.

CLI und Scheduler-Fehler beeinflussen Hintergrundprozesse wie Indexierung, Cache-Bereinigung, Importe und Wartungsaufgaben, oft ohne sichtbare Frontend-Fehler.

Häufige Symptome

  • Scheduler-Aufgaben schlagen stillschweigend fehl
  • CLI-Befehle liefern schwerwiegende Fehler
  • Cronjobs stoppen nach einem Update
  • Backend-Scheduler zeigt „failed“ oder „never executed“

Häufige Ursachen

  • PHP-Version stimmt nicht zwischen CLI und Web überein
  • Fehlende PHP Extensions in der CLI-Umgebung
  • Falsche Dateiberechtigungen
  • TYPO3-Update ohne Ausführung von Datenbank- oder Upgrade-Wizards
  • Defekte benutzerdefinierte Scheduler-Aufgaben oder Extensions

So beheben Sie das Problem

Führen Sie die TYPO3 CLI manuell aus, um reale Fehler zu sehen:
./vendor/bin/typo3

  1. Stellen Sie sicher, dass die von der CLI verwendete PHP-Version mit der Web-Version übereinstimmt.
  2. Überprüfen Sie die Scheduler-Logs in Systemverwaltung → Zeitplaner.
  3. Deaktivieren Sie vorübergehend fehlerhafte benutzerdefinierte Scheduler-Aufgaben.
  4. Stellen Sie sicher, dass Cronjobs auf den korrekten TYPO3-Pfad verweisen.
  5. Leeren Sie die Caches und führen Sie nach Updates die Upgrade Wizards erneut aus.

Tipp: Viele scheinbar „zufällige“ TYPO3-Probleme lassen sich auf fehlschlagende Scheduler-Aufgaben zurückführen. Prüfen Sie nach Updates immer den Zustand der CLI.

Der TYPO3 Kern reicht bereits aus, um TYPO3-Fehler zu finden und zu debuggen. Abgesehen davon habe ich einige der populären TYPO3 extensions für Fehler und Debugging recherchiert, ich hoffe, es wird Ihnen helfen.

EXT:pagenotfoundhandling Advanced Page not found handling in TYPO3

Seit TYPO3 v9 bietet der TYPO3 Core bereits eine gute Fehlerbehandlung über das Backend-Modul Site Management.

Das Team Agentur am Wasser hat eine coole TYPO3-Lösung entwickelt, die eine erweiterte Fehlerbehandlung ermöglicht. Diese Extension implementiert einen vielseitigen Error Handler für den TYPO3 CMS Umgang mit der site.

Merkmale

  • Nahtlose Integration mit dem TYPO3 Site Handling
  • Abrufen und Anzeigen einer beliebigen TYPO3-Seite im Fehlerfall
  • Konfiguration der Anfrage, die die URL abruft
  • TYPO3-interne Sprache anpassen
  • Definieren Sie zusätzliche GET-Abfrageparameter (pro Site und pro FehlerCode)
  • Automatische Verwaltung der Authentifizierung (HTTP-Basis-Authentifizierung [RFC 2617] / TYPO3-Frontend-Benutzerauthentifizierung)
  • Datenerfassung (kann deaktiviert werden)
  • Analyse-Backend-Modul (noch experimentell)

EXT:typo3-config-handling Erweiterte TYPO3-Konfigurations handhabung

Der TYPO3-Mann hat ein "TYPO3 Config Handling"-Tool entwickelt, um das Site-Management und die Fehlerbehandlung zu verbessern.

Eines der Hauptziele ist es, mehrere config.yaml zu konfigurieren, basierend auf jeder TYPO3_CONTEXT Umgebung.

Funktionen

  • Einstellungen abhängig von der Umgebung
  • Konfigurationsdateien in anderen Formaten
  • Konfigurationsdateien im config-Ordner gespeichert
  • Erweiterte Site-Konfiguration
  • Werte in Konfigurationsdateien verschlüsseln
  • Migrieren Ihres TYPO3-Projekts zur Verwendung von TYPO3 Config Handling
// Default layout
{
    "extra": {
        "helhum/typo3-config-handling": {
            "settings": "config/settings.yaml",
            "dev-settings": "config/dev.settings.yaml",
            "override-settings": "config/override.settings.yaml",
            "install-steps": "config/setup/install.steps.yaml"
        }
    }
}

// Another Example to match the Symfony framework
{
    "extra": {
        "helhum/typo3-config-handling": {
            "settings": "config/config_prod.yaml",
            "dev-settings": "config/config_dev.yaml"
        }
    }
}

EXT:includekrexx Let’s Debug TYPO3 Fluid Errors

Wenn Sie einen anderen Debugger ausprobieren wollen als den Standard von TYPO3, ist auch eine interessante Sache, um Fluid Template zu debuggen. Team Brainworxx hat mit kreXX einen elementreichen PHP-Debugger geschaffen, der den Backend-Zugriff auf Log-Dateien hervorhebt, Code-Building, um zu den gezeigten Qualitäten zu gelangen, und deutlich mehr.

EXT:t3Helfer TYPO3-Helfer

Partner für Extbase: Einfache und schlichte Funktionen, die Ihr TYPO3-Dasein mit Extbase und Extension Entwicklung vereinfachen. Bitte lassen Sie mich wissen, ob Sie irgendwelche Gedanken haben oder ob Sie zufällig Fehler entdecken, ich werde das sofort beheben.

EXT:pxa_lpeh Local Page Error Handler

Beschleunigung der Fehlerseite kümmert sich um PHP-Mitarbeiter und öffnet sie, indem lokale Seiteninhalte gestapelt werden, ohne eine externe HTTP-Anfrage zu stellen.

EXT:mklog MK Protokollierung

  • Überwacht Entwicklerprotokolle. Gibt programmierte E-Mail-Benachrichtigungen bei signifikanten Fehlern aus.

EXT:fh_debug Debug generator and Devlog

Dadurch wird ein PHP-Debug-Ausgabedokument erstellt. Außerdem ist dies ein sys_log- und devLog-Datenlogger.

EXT:debug_mysql_db Debug MySQL Database

Erweitert \TYPO3\CMS\Core\Datenbank\Datenbankverbindung (ehemals t3lib_db) und \TYPO3\CMS\Core\Datenbankverbindung zur Anzeige von Fehlern und Debug-Meldungen. Nützlich zum Anzeigen und Debuggen von SQL-Abfragen. Zeigt Fehlermeldungen an, wenn sie auftreten.

EXT:js_logger JavaScript TYPO3-Logger

Diese Erweiterung protokolliert grundsätzlich alle Javascript-Fehler, die in Ihrem Frontend auftreten, mittels Ajax an das TYPO3-Backend. Dies geschieht über die PSR\Log\Logger-Schnittstelle, so dass Fehlerprotokolle konsequent an den Logger gesendet werden, der in Ihrer TYPO3-Instanz eingerichtet ist. (wie FileWriter oder SysLogWriter)

Ext: ns_t3ai

Zusätzlich zu den erwähnten TYPO3-Fehler- und Debugging-Erweiterungen sollten Sie die T3AI TYPO3 AI Erweiterung integrieren, um Ihr TYPO3-Fehler-Tracking auf das nächste Level zu bringen. T3AI bietet eine spezielle Funktion zur Anzeige von benutzerdefinierten KI-Logs und Fehlerprotokollen, die alle Ihre KI-bezogenen Aufzeichnungen effizient verwaltet. Egal, ob Sie einfache Fehler oder komplexe KI-Aufgaben verwalten, T3AI sorgt dafür, dass Sie stets die Kontrolle über Ihre TYPO3-Umgebung behalten.

EXT:zabbix_klient Zabbix TYPO3

Zabbix ist ein Open-Source-Überwachungsprogrammiertool für verschiedene IT-Elemente, darunter Systeme, Server, virtuelle Maschinen und Cloud-Verwaltungen. Kunde für das Zabbix-Überwachungstool. Sichern Sie Ihre TYPO3-Systeme und erkennen Sie Fehler und Leistungseinbußen.

Moderne TYPO3-Projekte folgen in der Regel einem CI/CD-basierten Workflow mit mehreren Umgebungen wie zum Beispiel:

  • Lokale Entwicklung
  • Bereitstellung / Testen
  • Live-Produktivumgebung

Jede Umgebung sollte ihre eigene Fehlerbehandlungs-Konfiguration haben.

Schritt 1: Den TYPO3 Context definieren

Setzen Sie den TYPO3 Context mit einer Server-Umgebungsvariablen:

SetEnv TYPO3_CONTEXT Development

Schritt 2: Context pro Umgebung konfigurieren (Apache-Beispiel)

# Set context based on hostname

RewriteCond %{HTTP_HOST} ^dev\.example\.com$
RewriteRule .? - [E=TYPO3_CONTEXT:Development]

RewriteCond %{HTTP_HOST} ^www\.example\.com$
RewriteRule .? - [E=TYPO3_CONTEXT:Production]

CLI-Tipp

Für CLI-basierte TYPO3-Befehle können Sie den Context so definieren:

export TYPO3_CONTEXT=Development
env | grep TYPO3_CONTEXT

Schritt 3: Fehlerbehandlung pro TYPO3 Context konfigurieren

Erstellen oder aktualisieren Sie die folgende Datei:

// typo3conf/AdditionalConfiguration.php
use TYPO3\CMS\Core\Utility\GeneralUtility;
switch (GeneralUtility::getApplicationContext()) {
// Production or staging environment
case 'Production':
$GLOBALS['TYPO3_CONF_VARS']['SYS'] = [
'displayErrors' => '0',
'devIPmask' => '',
'syslogErrorReporting' => '0',
'belogErrorReporting' => '0',
];
Break;
// Local development environment
Default:
$GLOBALS['TYPO3_CONF_VARS']['SYS'] = [
'displayErrors' => '1',
'devIPmask' => '*',
'errorHandler' =>
TYPO3\CMS\Core\Error\ErrorHandler::class,
'debugExceptionHandler' => TYPO3\CMS\Core\Error\DebugExceptionHandler::class,
'productionExceptionHandler' => TYPO3\CMS\Core\Error\DebugExceptionHandler::class,
];
Break;
}

Schritt 4: PHP und TYPO3-Konfiguration

Lokale Entwicklung

# php.ini or .htaccess
php_flag display_errors on
php_flag log_errors on
php_value error_log /path/to/php_error.log

# TypoScript setup
config.contentObjectExceptionHandler = 0

 

Produktivumgebung

# php.ini or .htaccess
php_flag display_errors off
php_flag log_errors on
php_value error_log /path/to/php_error.log

# TypoScript setup
config.contentObjectExceptionHandler = 1

Wichtigste Erkenntnis

  • Verwenden Sie TYPO3_CONTEXT, um die Fehlersichtbarkeit pro Umgebung zu steuern
  • Zeigen Sie Fehler nur in der Entwicklung an, niemals in der Produktivumgebung
  • Protokollieren Sie Fehler immer, auch wenn ihre Anzeige deaktiviert ist

Die meisten TYPO3-Fehler sind nicht zufällig, sie sind nachvollziehbar. Mit der richtigen Konfiguration, klaren Logs und einem strukturierten Debugging-Ansatz lassen sich Probleme schnell und ohne Hektik identifizieren und beheben.

Konzentrieren Sie sich auf Kontext, Protokolle und letzte Änderungen. Kombinieren Sie automatisierte Prüfungen mit manueller Validierung und testen Sie Updates, Extensions und Serveränderungen stets sorgfältig.

Beherrschen Sie die Fehlerbehandlung, und TYPO3 wird stabil, vorhersehbar und produktionssicher.

TYPO3 blendet detaillierte Fehler in der Produktivumgebung aus Sicherheitsgründen aus. Der eigentliche Fehler wird immer in TYPO3- oder Server-Logs protokolliert.

Eine leere Seite bedeutet in der Regel einen schwerwiegenden PHP-Fehler bei deaktivierter Fehleranzeige. Prüfen Sie die Logs und verifizieren Sie PHP-Version, Memory-Limit und Extensions.

Typische Speicherorte sind:

  • Backend: Systemverwaltung → Protokoll
  • Dateien: var/log/ oder typo3temp/var/log/
  • Server: Apache / Nginx / PHP-Error-Logs

Nein. Die Fehleranzeige sollte nur in der Entwicklungs- oder Staging-Umgebung aktiviert werden. Produktivseiten sollten Fehler protokollieren, ohne sie öffentlich anzuzeigen.

Inkompatible Extensions, nicht ausgeführte Upgrade-Wizards, falsche PHP-Versionen und veraltetes TypoScript sind die häufigsten Ursachen.

Prüfen Sie zuerst die Logs, deaktivieren Sie zuletzt installierte Extensions, leeren Sie die Caches und verifizieren Sie die PHP-Kompatibilität. Raten kostet mehr Zeit als das Auswerten von Logs.

Do you need help to enhance your speed & performance?

  • Up to 90+ Google Page Speed Score
  • Advanced TYPO3 Speed Audit Report
  • 10 Support hours
TYPO3 Performance GIG
Performance

Post a Comment

×