Falsches Datum oder Uhrzeit nach Update auf TYPO3 9.5

»Wer hat an der Uhr gedreht«, fragten wir uns nach dem TYPO3 Upgrade. Wollt Ihr's wissen?

Heute möchte ich euch mal wieder von einem kleinen Problem bei dem TYPO3-Update einer Seite von 6.2 auf 9.5 berichten.

Konkret geht es um das Problem falscher Uhrzeiten bei einer Extension welche für die Darstellung von Veranstaltungen (eventmgmt) genutzt wird. Das könnte auch bei jeder anderen Extension vorkommen welche mit Datums/Zeitangaben arbeitet.

Nach der Umstellung auf TYPO3 9.5 war die Uhrzeit im Frontend 1 Stunde voraus. Bei ganztägigen Veranstaltungen, die mit dem Datum und 0:00 Uhr angegeben waren, sorgte das sogar für einen Unterschied von einem ganz Tag. Logisch, um 1:00 Uhr ist es eben schon der nächste Tag ;-). In der Datenbank stand aber immer noch der gleiche Timestamp. Es musste also irgendetwas mit den Zeiteinstellungen von TYPO3 oder dem Server zu tun haben.

Die Serverseitigen Einstellungen hatte ich gecheckt: folgendes Kommando zeigt euch die Zeitzonen auf dem Server:

date +"%Z %z"

Diese war bei beiden Servern identisch: CET +0100.

Ein Blick ins InstallTool brachte dann die Lösung. Unter 6.2 gibt es 2 Einstellungen für die Zeitangaben. [SYS][serverTimeZone] und [SYS][phpTimeZone]

Die serverTimeZone hat 1 als Standard Wert, phpTimeZone ist eher leer. Unter TYPO3 9.5 gibt es die Einstellung [SYS][serverTimeZone] nicht mehr. Wenn nun [SYS][phpTimeZone] weiterhin leer ist, sucht TYPO3 nach irgendwelchen Standardangaben in der php.ini oder auf dem Server, etc. Wenn nichts gefunden wird, wird als letzter Fallback eben UTC genommen. Dadurch kommt die falsche Uhrzeit zustande. Die Angabe Europe/Berlin in [SYS][phpTimeZone] brachte alles wieder ins Lot. Damit wird auch die Sommer/Winterzeit korrekt beachtet.


Kommentare

Prima, ich freu mich immer wenn die Artikel anderen helfen. Selbst nach vielen Jahren TYPO3 Erfahrung bemühe auch ich dann und wann die Suche im Web und freue mich, wenn jemand anderes die gleichen Probleme hatte und sein Wissen mit dem Rest der Welt, in dem Fall dann sogar mit mir teilt ;-).

Vielen Dank für den Blogartikel. Ich hatte nach einem Update auf PHP8 das gleiche Problem. Alle Uhrzeiten der News Artikel waren um 2 Stunden "verschoben". Europe/Berlin in [SYS][phpTimeZone] hat das Problem gefixt.

War anfangs etwas ratlos...


Kommentar schreiben

* Diese Felder sind erforderlich