Ошибка включения в архиве phar на рабочем сервере, но не на локальном сервере разработчика - PullRequest
2 голосов
/ 04 февраля 2012

Ошибка:

include(): Failed opening 'phar:///var/www/vhosts/redsoftware.us/assets/RedSoftware/app/libs/goutte/goutte.phar/_cli_stub.php' for inclusion (include_path='phar:///var/www/vhosts/redsoftware.us/assets/RedSoftware/app/libs/goutte/goutte.phar:.:') 

Похоже, что архив phar загружается, но когда он пытается включить какой-либо актив, происходит сбой. Я в недоумении относительно того, где даже начать устранять неполадки. Он отлично работает на моем локальном компьютере, но когда я загружаю его на рабочий сервер (если он запускает plesk), происходит сбой.

Phar, кажется, включен. Из phpinfo ():

Зарегистрированные потоки PHP

https, ftps, compress.zlib, compress.bzip2, php, файл, glob, данные, http, ftp, phar , zip

Есть идеи, что может быть причиной этого?

1 Ответ

1 голос
/ 05 февраля 2012

Проблема, с которой я столкнулся, связана с более ранними версиями Ioncube, имеющими проблемы с phar-архивами.

Выдержка из http://silex.sensiolabs.org/doc/usage.html#pitfalls:

Загрузчик Ioncube - это расширение, которое может декодировать PHPзакодированный файл.К сожалению, старые версии (до версии 4.0.9) плохо работают с phar-архивами.Вы должны либо обновить загрузчик Ioncube до версии 4.0.9 или новее, либо отключить его, комментируя или удаляя эту строку в файле php.ini:

zend_extension = /usr/lib/php5/20090626+lfs/ioncube_loader_lin_5.3.so

Спасибо @Maerlyn за симпатию к этой статье,

...