Zum Inhalt springen

Backend nach PHP-Umstellung nicht mehr erreichbar

Erstellt am 2. Dezember 2016 · 8 Antworten · letzte Antwort am 11. Dezember 2018

Tags: PHP, TYPO3 4.x, Frage

drytooler ·

Seit einer PHP-Umstellung auf 5.6 durch den Provider funktioniert das Backend nicht mehr:

$toolbarItem "shortcuts" must implement interface backend_toolbarItem

Über das Install tool komme ich noch ran, habe (nur?) einen Fehler gelb markiert gefunden, Rest grün:
Basic Configuration > php.ini configuration checked

Functions disabled!

Das zu beheben, versuche ich schon seit Tagen und bin nun nahe der Verzweiflung :-(
Mit meinem gefundenen Link zu "Bug 53682" kann ich nicht so viel anfangen.
https://forge.typo3.org/issues/53682

Auch die Zeilen von Hand zu ändern klappte nicht, da ich genau gleichnamige Dateien und Zeilen darin nicht habe (habe z.B. kein "backend", nur: typo3 > sysext > beuser)

Eine Umstellung auf Php 7.0 ist die Alternative des Webhosters. Hatte dies auch kurz probiert, aber da wird dann die Datenbank nicht mehr gefunden.

Aktuell:
Typo3 4.5.19
PHP 5.6
Host Europe
kein Plan :-(

Danke euch für Hilfe!!!

Norman2k ·

TYPO3 4.5 ist nicht mit PHP 5.6 kompatibel, zum Anfang war es max. PHP 5.3, danach haben sie es auf 5.5 erhöht. Eventuell hilft schon ein Update auf die letzte TYPO3 Version im 4.5er Branch (4.5.40)
Ansonsten kann ich dir wirklich empfehlen, ein Upgrade auf TYPO3 6.2 zu machen

drytooler ·

TYPO3 4.5 ist nicht mit PHP 5.6 kompatibel

– Ah, danke!
Kann ich das Update (nur) mit dem Upgrade Wizard im Install tool machen?
Ins Backend komme ich ja nicht rein, d.h. allzu viel vorher überprüfen kann ich nicht, wie in den Beschreibungen geraten wird.
(Sorry, bin ziemlich unerfahren in Updates, und traue mich kaum ran.)

P.S.
1. Backup der Datenbank mit dem "MySQLDumper": erledigt

2. Backup der Dateien auf dem Server: erledigt (wenn es so passt)
Ich habe folgende Ordner bei mir lokal auf dem Rechner gesichert:
fileadmin
uploads
typo3conf

3. Update: ausstehend
---> Kann man das ganze evl. vorab in einer parallelen Version testen, ob es klappt (und wie lege ich das an)?
Welche von den vielen Verzeichnissen muss ich genau auf dem Server austauschen, um die neue Version 4.5.40 zu bekommen? (Ich versuche vorerst diese und wenns nicht mit PHP 5.6 geht, dann Typo3-Version 6.2)
Ich hab dies hier herunter geladen: https://sourceforge.net/projects/typo3/files/TYPO3%20Source%20and%20Dummy/TYPO3%204.5.40/
Muss das ganze irgendwie manuell durchführen, SSH-Zugang ist leider nicht vorhanden.

Norman2k ·

Natürlich könnte man das vorher testen, am besten du legst ein neues Web mit einer Subdomain und einer separaten Datenbank an und kopierst dann alles rüber.
Lade dir den Source runter, entpacken und auf deinen Webspace in einen separaten Ordner hoch laden. Danach verschiebst die die bestehenden Ordner vom Source oder benennst sie um und schiebst dann den neuen Source in dein Root. Mit Source meine ich die Ordner typo3, t3lib und die index.php.
Sollte irgendwas schief laufen, hast du den alten Source noch und kannst den bei Bedarf wieder in dein Root schieben.
Der Upgrade Wizard ist nur für ein Major-Upgrade, also von 4.5 auf 6.2. Aber aufpassen, bei 6.2 hat sich sehr viel geändert und eventuell funktionieren die Extensions nicht mehr ohne kleinere Anpassungen!

Gregmuell ·

Ich hatte das gleiche Problem für 2 Typo3 Installationen (4.5 & 4.7) und folgende recht simple Lösung gefunden:
in den folgenden Dateien den String "&$backendReference" durch "$backendReference" ersetzen.

www/cms/typo3/classes/class.clearcachemenu.php:55:
www/cms/typo3/classes/class.livesearch.php:51:
www/cms/typo3/classes/class.shortcutmenu.php:79:
www/cms/typo3/interfaces/interface.backend_toolbaritem.php:43:
www/cms/typo3/sysext/opendocs/class.tx_opendocs.php:61:
www/cms/typo3/sysext/sys_action/toolbarmenu/class.tx_sysaction_toolbarmenu.php:53:
www/cms/typo3/sysext/sys_action/toolbarmenu/class.tx_sysaction_toolbarmenu.php:63:
www/cms/typo3/sysext/workspaces/Classes/BackendUserInterface/WorkspaceSelectorToolbarItem.php:59:

Jetzt muss ich den Kunden nur noch von einem Update überzeugen
;-)

BastianBalthasarBux ·

Also zuallererst möchte ich hier festhalten: auch wenn TYPO3 4.5 offiziell nicht PHP 5.6 unterstützt, bei mir lief das immer absolut friktionsfrei, zumindest in der letzten Version, also mit Version 4.5.40.
Was sicher nicht funktionieren wird, ist PHP 7.

Einen Kunden von einem Update überzeugen, bei einer derart unsicheren Version die ohnehin schon lange End-of-Life ist? Das kann ja nun nicht grad die Schwierigkeit sein. Ich würde allerdings mal von vornherein auf mindestens 7.6 upgraden. Alles andere wäre ja rausgeschmissenes Geld!

Ein reines Update auf 4.5.40 sollte die Probleme also einfach beheben. Dann hast du nur noch ein Problem: der Kern ist in dieser Version unsicher. Zumindest den Patch vom Mai 2016 solltest du also händisch backporten!
Im Anschluss kannst du dich um ein geregeltes Upgrade auf 7.6 oder gleich 8.6 kümmern.

Teisinger ·

Wenn die Seite nicht all zu groß ist, kannst du sogar eine komplett neue empfehlen - da csc depricated ist!
Sprich du sowieso sehr viel mehr umbauen müsstest damit es auch zukünfigt update "sicher" ist. <- und da ist der aufwand komplett neu, denke ich, geringer. 🙂

Ebiill ·

Ich habe dasselbe Problem. Die Anleitung ist nachvollziehbar, lediglich fehlt bei mir der letzte Angabe bei der jeweiligen Datei. Schaut bei mir so aus z.B.
www/cms/typo3/classes/class.clearcachemenu.php
Wäre an und für sich nicht tragisch nur bei diesen beiden Dateien ist eben nur eine da.
www/cms/typo3/sysext/sys_action/toolbarmenu/class.tx_sysaction_toolbarmenu.php:53:
www/cms/typo3/sysext/sys_action/toolbarmenu/class.tx_sysaction_toolbarmenu.php:63:
Bevor ich mir hier diese Arbeit antue möchte ich fragen wie man das so sieht.
TYPO 3 Vers. 4.6.15 PHP 5.5 umstellen auf PHP 5.6. Einstieg funktioniert nach Umstellung nicht mehr siehe oben.

Danke für die Tipps.
Eberhard

Ebiill ·

Nun habe ich doch obenstehende Änderungen gemacht. Leider komme ich so auch nicht aufs Backend. Fehlermeldung: Fatal error: Declaration of Tx_Workspaces_ExtDirect_WorkspaceSelectorToolbarItem::__construct() must be compatible with backend_toolbarItem::__construct(TYPO3backend $backendReference = NULL) in /www/htdocs/w0065f3b/cms/typo3/sysext/workspaces/Classes/ExtDirect/WorkspaceSelectorToolbarItem.php on line 40
Nachdem es nicht ging habe ich alles wieder zurückgebaut, und dann ging es mit PHP 5.5 auchnicht mehr mit folgender Fehlermeldung: Fatal error: Declaration of Tx_Workspaces_ExtDirect_WorkspaceSelectorToolbarItem::__construct() must be compatible with backend_toolbarItem::__construct(TYPO3backend &$backendReference = NULL) in /www/htdocs/w0065f3b/cms/typo3/sysext/workspaces/Classes/ExtDirect/WorkspaceSelectorToolbarItem.php on line 40
Irgendwo fehlt mir offensichtlich die Zieladresse.
Wer hat einen Tipp?
Danke!
Eberhard