Projekt

Allgemein

Profil

Aktionen

Bug #251

offen

[Bugsink] Error: Call to a member function getTitle() on null

Von Bug Sink vor etwa 1 Monat hinzugefügt.

Status:
Neu
Priorität:
wichtig
Zugewiesen an:
-
Beginn:
16.09.2026
Abgabedatum:
% erledigt:

0%

Geschätzter Aufwand:

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.yaml hat keinen gültigen base-Eintrag oder dieser stimmt nicht mit dem angeforderten Host überein.
  • Die config/sites/<sitename>/config.yaml ist fehlend, leer oder enthält keine korrekte base-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 .htaccess wurde 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/hosts Eintrag 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

Aktionen

Auch abrufbar als: Atom PDF