В PHP Pear отсутствует MDB2.php
После перемещения этого сайта на другой сервер я получаю следующую ошибку:
Неустранимая ошибка: require_once(): не удалось открыть обязательный файл 'MDB2.php' (include_path='.:/ Usr/lib/php5.4:/usr/lib/php5.4/') в /homepages/14/xxxxxx/htdocs/public_html/includes/pdbconnection.php в строке 3
Я посмотрел, где Pear может быть расположен через PHPInfo(), и я получил это (--with-pear=/usr/lib/php5.4
) поэтому он ищет там MDB2.php.
Хотя это общий хостинг, у меня есть доступ по SSH. Из того, что я сделал исследование, кажется, что набрав pear install MDB2
должен исправить все, но когда я это сделаю, я получу следующий ответ:
ВНИМАНИЕ: канал "pear.php.net" обновил свои протоколы, используйте "channel-update pear.php.net" для обновления Не удается установить, php_dir для канала "pear.php.net" не доступен для записи текущему пользователю
Что заставляет меня верить, что я потонул... Я?:-(
Спасибо за любую помощь!
Когда я печатаю pear list
Я получаю следующее (если это имеет смысл):
Installed packages, channel pear.php.net:
=========================================
Package Version State
Archive_Tar 1.3.2 stable
Console_Getopt 1.2.1 stable
DB 1.7.13 stable
HTML_Template_IT 1.1 stable
HTTP 1.4.0 stable
HTTP_Header 1.2.0 stable
Mail 1.1.14 stable
Net_SMTP 1.2.10 stable
Net_Socket 1.0.8 stable
Net_UserAgent_Detect 2.0.1 stable
PEAR 1.5.0 stable
Structures_Graph 1.0.2 stable
XML_Beautifier 1.1 stable
XML_Parser 1.2.8 stable
XML_RPC 1.5.1 stable
XML_Util 1.1.4 stable
Спасибо!
1 ответ
Кажется, у вас нет прав на запись в каталог установки (/usr/lib/php5.4), когда вы вошли в систему как обычный пользователь. Обычно я бы предложил вам использовать sudo для запуска той же команды, что и root.
Так что-то вроде этого:
$ sudo pear channel-update pear.php.net
Но вы находитесь на виртуальном хостинге, поэтому вы можете попросить службу поддержки сделать это за вас или загрузить необходимые пакеты и поместить их где-нибудь еще в ваш include_path.