Die korrekten Einstellungen für den TYPO3 Live-Betrieb

|  (aktualisiert am 03.03.2022)
Mehrere Menschen sitzen um einen Tisch und arbeiten zusammen
Das Content Management System TYPO3 ist ein sehr mächtiges Programm zur Erstellung von Webseiten – egal ob für Entwickler, Administratoren oder Redakteure. Doch eines steht fest: Mächtige Anwendungen haben auch ihre Tücken. Denn es müssen viele verschiedene Einstellungs- und Konfigurationsmöglichkeiten beachtet und entsprechend gesetzt werden. 
In meinem heutigen Artikel möchte ich euch daher aufzeigen, wie ihr eure TYPO3 Seite „fit für den Live-Betrieb“ bekommt, d.h. welche Einstellungen unbedingt gesetzt bzw. nicht gesetzt werden sollten.

Wie und wo können Einstellungen für meine TYPO3 Installation gesetzt werden?

Alle für TYPO3 relevanten Einstellungen können sowohl über die LocalConfiguration.php im Ordner typo3conf der Installation, als auch über das Install-Tool im Backend, gesetzt werden. Wir benutzen hier die etwas benutzerfreundlichere Variante über das Install-Tool und verwenden TYPO3 in der Version 11.5 LTS.

 

Nach einem Login in das TYPO3 Backend als System-Maintainer, sehen wir unter Admin-Tools > Settings den Punkt Configure Installation-Wide Options. Über den Button Configure Options öffnet sich darunter ein Modal:

Wir können hier die einzelnen Konfigurationsbereiche ausklappen, oder den Suchfilter nutzen. Nachdem alle Konfigurationen vorgenommen wurden, können die Einstellungen über Write Configuration gespeichert werden.  

Was hat es mit dem TYPO3 Debug-Modus bzw. Produktiv-Modus auf sich?

Eure TYPO3 Installation kann in zwei unterschiedlichen Modi betrieben werden – zum einen im Debug-Modus und zum anderen im Produktiv-Modus. Einfach erklärt: der Debug-Modus hilft euch beim Entwickeln der Seite mit besonderen Ausgaben, der Produktiv-Modus ist beim Betrieb der Seite zwingend nötig und unterdrückt alle eventuell auftretenden Fehlermeldungen.

Bestes Hosting für Agenturen & Freelancer

Welche Einstellungen benötige ich für die Entwicklung?

Für die Entwicklung empfiehlt TYPO3 folgende Standardeinstellungen: 

'BE/debug' => true,
'FE/debug' => true,
'SYS/devIPmask' => '*',
'SYS/displayErrors' => '1',
'SYS/exceptionalErrors' => '12290'

Darüber hinaus sollten die Deprecation-Meldungen aktiviert werden. Damit erhalte ich im TYPO3-Log Informationen zu verwendeten Funktionen, die in zukünftigen TYPO3-Versionen nicht mehr vorhanden sein werden. Diese Einstellung kann ich allerdings nicht über die Configure Options-Oberfläche ändern. Ich kann sie zum Beispiel direkt in der LocalConfiguration.php eintragen: 


'LOG' => [
    'TYPO3' => [
        'CMS' => [
            'deprecations' => [
                'writerConfiguration' => [
                    'notice' => [
                        'TYPO3\CMS\Core\Log\Writer\FileWriter' => [
                            'disabled' => false,
                        ],
                    ],
                ],
            ],
        ],
    ],
],

Welche Einstellungen benötige ich zwingend für den Live-Betrieb?

Für den Live-Betrieb werden folgende Konfigurationen gesetzt: 

'BE/debug' => false,
'FE/debug' => false,
'SYS/devIPmask' => '',
'SYS/displayErrors' => '0',
'SYS/exceptionalErrors' => '4096'

Darüber hinaus werden hier keine Deprecation-Meldungen protokolliert, da diese im Live-Betrieb dazu führen können, dass die Log-Dateien sehr schnell sehr groß werden. Dies ist auch die Standardeinstellung: 

'LOG' => [
    'TYPO3' => [
        'CMS' => [
            'deprecations' => [
                'writerConfiguration' => [
                    'notice' => [
                        'TYPO3\CMS\Core\Log\Writer\FileWriter' => [
                            'disabled' => true,
                        ],
                    ],
                ],
            ],
        ],
    ],
],

Ich will nicht lauter Einstellungen setzen. Wie geht das per 1-Klick?

Einfacher geht’s natürlich mit einem Klick. Und auch das kann TYPO3 über Admin-Tools → Settings. Hierfür wählt ihr unter Configuration Presets den Button Activate Presets aus. Dort findet ihr die Einstellungen Live und Debug, die ihr entsprechend für eure Seite im Betrieb oder während der Entwicklung nutzen könnt. Wählt das passende Preset aus und klickt auf Activate preset. TYPO3 setzt dann automatisch alle passenden Werte für eure Installation.

Was kann passieren, wenn ich die Einstellungen falsch setze?

Fehlerhafte Konfigurationen des Debug-Modus im Live-Betrieb der Seite stellen ein erhebliches Sicherheitsrisiko dar und verlangsamen diese außerdem. Überprüft daher unbedingt vor Liveschaltung eurer Seite, ob die Debug-Einstellungen deaktiviert oder wenigstens abgesichert sind, da euch andernfalls sensible Daten und Informationen verloren gehen können.

Tiefer ins Detail: Was machen die Konfigurationsparameter überhaupt?

Nun wisst ihr schon, welche Konfigurationen ihr für eure TYPO3 Modi verwenden solltet. Was genau diese bewirken, erkläre ich euch im Folgenden:

  • BE/debug
    Aktiviert ihr diese Option, so wird Loginrefresh deaktiviert und pageRenderer in den Debug-Modus versetzt. Außerdem wird der Feldname an die Bezeichnung der Felder angehängt.
  • FE/debug
    Wenn aktiviert, wird die gesamte Parsetime der Seite als HTTP-Response-Header "X-TYPO3-Parsetime" hinzugefügt.
  • SYS/devIPmask
    Definiert eine Liste von IP-Adressen, die es ermöglicht, die Entwicklungsausgabe anzuzeigen. Die Funktion debug() verwendet dies als Filter. Wird der Wert auf einen Leerwert gesetzt, wird alles abgelehnt. Die Einstellung auf „*“ erlaubt alle IP-Adressen.  
    Wir empfehlen hier entweder einen Leerstring oder höchstens die statische IP-Adresse des Entwicklers zu setzen, damit Fehlermeldungen den Webseitenbesuchern nicht angezeigt werden.
  • SYS/displayErrors
    Konfiguriert, ob PHP-Fehler im Frontend angezeigt werden sollen (1) oder nicht (0). Alternativ kann auch die devIPMask berücksichtigt werden (-1). Weitere Details sind in der offiziellen Dokumentation beschrieben: https://docs.typo3.org/m/typo3/reference-coreapi/11.5/en-us/ApiOverview/ErrorAndExceptionHandling/Configuration/Index.html
  • SYS/enableDeprecationLog
    Aktiviert das Logging von veralteten Methoden im Programmcode. Dies kann wahlweise in einer Datei (typo3conf-Ordner), in der Entwicklerkonsole oder auf der Debug-Konsole im Backend erfolgen. Der Standardwert ist hierbei file.
  • SYS/exceptionalErrors
    Diese Einstellung gibt an, welche Fehlerarten vom exceptionHandler als Exceptions behandelt werden sollen. Die Standardeinstellung im Live-Betrieb ist 4096. Weitere Einstellungsmöglichkeiten sind auch hier in der offiziellen Dokumentation beschrieben: https://docs.typo3.org/m/typo3/reference-coreapi/11.5/en-us/ApiOverview/ErrorAndExceptionHandling/Configuration/Index.html

Solltet ihr noch weitere Fragen haben, meldet euch gerne bei unserem Kundenservice.

Ähnliche Artikel:

Mann surft auf Website, welche per SSL gesichert ist
mittwald

So geht’s: Eure Website via SSL verschlüsseln – Teil 2 (TYPO3 & Shopware)

Erfahrt hier, welche Anpassungen ihr in TYPO3 und Shopware durchführen müsst, um eure Website via SSL zu verschlüsseln.

Frau zeigt auf News, dass TYPO2 v9 LTS ab jetzt verfügbar ist
Webentwicklung

„You’re the one that I want“ – TYPO3 v9, ab sofort im Mittwald Softwaremanager!

Die neue LTS Version TYPO3 v9 ist nun in unserem Softwaremanager verfügbar. Was es alles an neuen Funktionen und Veränderungen gibt, erfahrt ihr hier.

Tablet in Händen von Mann zeigt Migration alter Daten aus dem mm_forum ins typo3_forum
Webentwicklung

Migrator: Macht aus mm_forum ganz einfach typo3_forum!

Mit der neuen Version 1.1.0 unserer Extension typo3_forum ist nun eine Migration der alten Daten aus der Vorgänger-Extension mm_forum möglich.

Kommentare

HIdevis am
Danke bis hierhin für die Infos. Und auch Kristina's Tipp es zu beheben ist ganz sicher richtig.
Jedoch habe ich systemLogLevel = 3 eingestellt, aber die Warning laufen weiter ein. Gibt es noch andere Optionen die die Ausgabe von WARNINGS auslösen?

Gruß
Torsten
Kristina El-Issa am
Hallo Torsten,

kannst du uns bitte sagen, welche TYPO3 Version du nutzt? Dann können wir dir bestimmt weiterhelfen. :)

Liebe Grüße
Kristina
Michael am
Hallo Kristina,
das Problem habe ich ebenfalls (TYPO3 9): systemLogLevel ist nachprüfbar auf 3 eingestellt, aber unter var/log werden weiterhin auch Warnings protokolliert.
Viele Grüße
Michael
Robert Wildling am
Und der Vollständigkeit halber sollte auch noch erwähnt werden, dass ein bisschen TypoScript auch hilft, bessere Fehlermeldungen im FE angezeigt zu bekommen:

config.contentObjectExceptionHandler = 0
Jan Jansky am

Im Live System SYS/systemLogLevel = 2 zu setzen, bedeutet, dass auch Warnungen geschrieben werden, was über die Zeit zu unnötig großen Log Dateien führen kann.

Kristina Kiebe am
Hallo Jan,

das ist korrekt, aber du könntest die Warnings ja auch direkt beheben. :-)
Alternativ kannst du einfach auf einen höheren Wert stellen:

* 0 info
* 1 notice
* 2 warning
* 3 error
* 4 fatal error

Bei 3 werden dann nur Errors geloggt, bei 4 die fatalen.


Viele Grüße aus Espelkamp!
Kristina