Bug #251
offen[Bugsink] Error: Call to a member function getTitle() on null
0%
Beschreibung
Bugsink: https://bugsink.cytrus.de/issues/issue/fad81bdf-7e32-463e-8896-5d3ef2a717e6/event/last/
Typ: NEW issue
Projekt: www-fuchsfelge-com
Bugsink Alert
Error: Call to a member function getTitle() on null
Automatisch erstellt durch n8n
KI-Analyse:
Analyse des TYPO3 Fehlers¶
1. Ursache identifiziert¶
Fehler: Call to a member function getTitle() on null
Betroffene Stelle: TYPO3\CMS\Core\Middleware\VerifyHostHeader::process (Zeile 55)
Root Cause: Der VerifyHostHeader-Middleware gelingt es beim Verarbeiten der eingehenden HTTP-Anfrage nicht, eine gültige Site-Konfiguration (Site Object) für den angeforderten Host/URL aufzulösen. Anschließend wird auf diesem null-Wert getTitle() aufgerufen — was den Fatal Error auslöst.
Typische Auslöser:
- Die
config/system.yamlhat keinen gültigenbase-Eintrag oder dieser stimmt nicht mit dem angeforderten Host überein. - Die
config/sites/<sitename>/config.yamlist fehlend, leer oder enthält keine korrektebase-URL. - Die Anfrage kommt mit einem unerwarteten/leeren
Host-Header (z. B. direkter IP-Zugriff, falscher Port, fehlender Host-Header im Browser/Curl). - In Install-Tool oder
.htaccesswurde die Base URL falsch konfiguriert.
Zusammengefasst: Der HTTP-Request匹配t keine definierte TYPO3-Site → $site ist null → getTitle() schlägt fehl.
2. Fix (konkret)¶
Schritt 1 — Site-Konfiguration prüfen:
# config/sites/default/config.yaml
base: 'https://deine-domain.tld/'
baseVariants: []
languages:
- languageId: '0'
title: 'Default'
locale: 'de_DE.UTF-8'
iso-639-1: 'de'
navigationTitle: 'Default'
hreflang: 'de-DE'
direction: ''
flag: ''
rootPageId: 0
Sicherstellen, dass base exakt dem Domain-Header der Anfrage entspricht (inkl. Protokoll und ggf. Port).
Schritt 2 — System-Konfiguration prüfen:
# config/system.yaml
base: 'https://deine-domain.tld/'
Schritt 3 — Host-Header validieren:
- Curl-Request prüfen:
curl -I -H "Host: deine-domain.tld" https://dein-server/ -
/etc/hostsEintrag prüfen (bei lokaler Entwicklung) - Sicherstellen, dass der Browser/Client den korrekten Host mitsendet
Schritt 4 — Notfall-Fix (temporär):
Falls der VerifyHostHeader-Middleware die Ursache ist und du schnell Zugriff brauchst, kann das Middleware-Handling über config/system.yaml angepasst werden:
SYS:
overwriteRequestHost: true
⚠️ Nur als temporäre Lösung — die eigentliche Site-Konfiguration muss stimmen!
3. Betroffene TYPO3 Extension¶
typo3/cms-core — Konkret die Core-Klasse TYPO3\CMS\Core\Middleware\VerifyHostHeader. Es handelt sich nicht um eine Drittanbieter-Extension, sondern um einen Fehler im TYPO3-Core-Middleware-Stack, der durch fehlende/fehlerhafte Site-Konfiguration ausgelöst wird.
4. Confidence¶
85%
Die Analyse ist hochgradig sicher: Der Stack Trace zeigt eindeutig VerifyHostHeader::process als Fehlerursprung, und der getTitle()-Aufruf auf null passt exakt zum Szenario „keine Site für den Host auflösbar". Die verbleibenden 15% Unsicherheit resultieren daraus, dass ohne direkten Blick auf den exakten Quellcode von VerifyHostHeader.php Zeile 55 nicht 100% ausgeschlossen werden kann, dass ein anderes null-Objekt im Aufrufkette dazwischenliegt.
Nichts anzuzeigen