Для PHP-5.4 Debian — нет suhosin, xcache, xdebug расширений

Сегодня проапгрейдил свою Debian OS 6.0 (настроено apt-pinning).
Среди прочих апдейтов при выполнении dist-upgrade привалили и обновления для ряда установленных модулей php5.  Обновился и сам PHP, собственно до версии 5.4.0-2. Но… тут начались непонятные проблемы — ни один локальный сайт не работал! В логах были непонятные ошибки, скажем, для сайта, основанного на фреймворке  YII было сообщение:

[Sun Mar 25 13:32:51 2012] [error] [client 127.0.0.1] PHP Fatal error:  Call to undefined function (null)() in /home/web/ccc/frontend/index.php on line 4

А на той строке 4 ничего не было особенного, окромя dirname(__FILE__)!
Порыскав-поискав в интернете похожие ошибки, не нашел ничего. Запостил баг на php.net.
Но дело-то неприятное! Ничегошеньки ведь не работает…
Начал копаться дальше. Попробовал запустить скрипты php из консоли, дабы проверить — неужто dirname() убрали? 🙂 И обнаружил еще ряд замечательных уведомлений warnings:

rodush@rdushko:/var/www$ php test.php
Failed loading /usr/lib/php5/20090626+lfs/xdebug.so: /usr/lib/php5/20090626+lfs/xdebug.so: cannot open shared object file: No such file or directory
PHP Warning: PHP Startup: Unable to load dynamic library ‘/usr/lib/php5/20100525+lfs/suhosin.so’ — /usr/lib/php5/20100525+lfs/suhosin.so: cannot open shared object file: No such file or directory in Unknown on line 0
PHP Warning: PHP Startup: Unable to load dynamic library ‘/usr/lib/php5/20100525+lfs/xhprof.so’ — /usr/lib/php5/20100525+lfs/xhprof.so: cannot open shared object file: No such file or directory in Unknown on line 0

А дальше директива dirname() отработала и подключился файл, который я подключал.
Заглянув в директорию, указанную в сообщении, я обнаружил, что таких библиотек действительно нету!
Пока решил не морочить голову: допишут — обновлюсь; решил убрать конфиги php для данных библиотек.
Они расположены в директории /etc/php5/conf.d/
просто переименовал все конфиги, на которые не пришли обновления файлы с суффиксом «old» (на будущее пригодятся :), думаю)

suhosin.ini.old xdebug.ini.old xcache.ini.old xhprof.ini.old

Попробовал вызов из консоли — не ругается php. Попробовал зайти на сайты в броузере и — о чудо! — всё работает!!
Вот такие вот причуды могут быть, если php ругается на невозможность подключить дополнительные модули-библиотеки.

Для PHP-5.4 Debian — нет suhosin, xcache, xdebug расширений: 4 комментария

  1. Thanks, I just updated to Debian sid and had a sortlike problem. Commenting the extension=suhosin.so in /etc/php5/conf.d/suhosin.ini solved the problem for me.

  2. Thanks John, I was getting an error after upgading php5.3 > php5.4 on a ubuntu 12.04 for xcache and xdebug. Purging with aptitude and reinstalling through apt-get did the trick. 🙂

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *