Для меня решение было:
locate --regex /mcrypt[.]so\$ /gd[.]so\$ /suhosin[.]so\$ /pdo_mysql.so\$ /pdo[.]so /mysqli[.]so\$ '/php5/.*/mysql[.]so$'
, который вернул расположение всех библиотек, в которых была установлена моя установка php5:
/usr/lib/php5/20090626+lfs/gd.so
/usr/lib/php5/20090626+lfs/mcrypt.so
/usr/lib/php5/20090626+lfs/mysql.so
/usr/lib/php5/20090626+lfs/mysqli.so
/usr/lib/php5/20090626+lfs/pdo.so
/usr/lib/php5/20090626+lfs/pdo_mysql.so
Я немного волновался, чтоони выглядят как старые версии, но я все равно использовал их пути.Стефгоселин определил местонахождение ini-файлов, /etc/php5/conf.d/
.Я изменил их все.Команда ниже изменит все файлов *.ini
, поэтому убедитесь, что все ваши действительно нуждаются в модификации.Очевидно, вам нужно использовать целевой путь, который вы обнаружили с помощью команды locate вместо меня, /usr/lib/php5/20090626+lfs/
:
sudo sed -ri -e "s|^(extension=)(\w{2,10}[.]so)$|\1/usr/lib/php5/20090626+lfs/\2|g" /etc/php5/conf.d/*.ini
Прежде чем найти это решение, я безуспешно попробовал несколько команд apt-get purge
и apt-get reinstall
.Я не уверен, но моя проблема, возможно, возникла с установкой zend from source или phpmyadmin с aptitude.Это никогда не вызывало никаких ошибок php, только раздражающее предупреждение, которое вы упомянули.Наконец php5 может запускаться без ошибок:
php5 --version
дает ...
PHP 5.3.5-1ubuntu7.2 with Suhosin-Patch (cli) (built: May 2 2011 23:18:30) Copyright (c) 1997-2009 The PHP Group Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
with Suhosin v0.9.32.1, Copyright (c) 2007-2010, by SektionEins GmbH