Nov 17 2007

Zend Optimizer – Probleme beim Upgrade auf PHP 5

Tag: Linux,PHPRonald @ 17. November 2007, 00:06

Heute Abend war es soweit, ich habe mal wieder einen Server, der noch mit PHP 4 lief, auf PHP 5 (genau gesagt PHP 5.2) upgraden wollen. Das lief auch soweit alles ganz super. Ich installierte nacheinander den Zend Optimizer, den eAccelerator und ffmpeg-php nach, da es dafür ja keine (Standard-)Debian-Pakete gibt.

Ein Aufruf der phpinfo()-Funktion im Browser zeigte mir dann auch, dass eigentlich alles richtig geladen wurde. Doch dann, beim Ausführen eines Skripts auf der Konsole, lachte mich die folgende Fehlermeldung an:

Failed loading /usr/local/lib/Zend/ZendOptimizer.so: /usr/local/lib/Zend/ZendOptimizer.so: undefined symbol: zend_opcode_handlers

Hoppla! Wo kommt die denn her?! Ich forstete in den Konfigurationsdateien und ließ mit bestimmt 10x mit php -m die geladenen Module ausgeben. Dort war nichts vom Zend Optimizer zu finden. Irgendwann führte ich ein einfaches “Hello World”-Testskript aus und siehe da: Es funktionierte!
Wieso funktionieren also manche Skripte und andere nicht?! Ich schaute mir eins der betroffenen Skripts an und gleich in der ersten Zeile wurde es mir schlagartig klar:

[code lang="bash"]#!/usr/bin/php4[/code]

In die She-Bang-Zeile hatte ich also tatsächlich PHP 4 direkt angesprochen. Paff! Debian war so freundlich und hatte nach dem Ugrade auf PHP 5 nicht den alten CLI-Kram entfernt, was ich nun von Hand nachholte. Die Fehlermeldung kam also auch nicht von PHP 5, sondern noch vom alten PHP 4. Blöd-Doof!
Ich setzte nach dem Deinstallieren noch einen symbolischen Link von /usr/bin/php4 auf /usr/bin/php und die Welt war und ist wieder in Ordnung. Puh …

Ein Kommentar zu “Zend Optimizer – Probleme beim Upgrade auf PHP 5”

  1. Dennis says:

    helden des Alltags quasi….

Dein Kommentar