У меня есть дни, пытаясь найти все и искать повсюду решение.
Проблема возникла, когда Heroku отправил мне электронное письмо об обновлении, которое требовало Composer для PHP- приложений.
Моя папка в настоящее время:
-- MyProject/ ------ ext/ ---------- mongo.so ------ php.ini ------ composer.json ------ index.php
(Перед проблемой это безупречно работает без Composer ).
php.ini
extension_dir = "/app/www/ext/" extension=mongo.so
composer.json
{ "require": { "ext-mongo": "*" } }
Очевидно, что если я запустил команду установки , я получу ошибку:
$ composer install Problem 1 - The requested PHP extension ext-mongo * is missing from your system.
index.php
<?php $connection = new Mongo("mongodb://username:password@ds053728.mongolab.com:53728/dbname"); $db = $connection->dbname; echo "done?"; ?>
Heroku, видимо, уже не распознает настройки php.ini и ext / mongo.so , поэтому я получаю ошибки, такие как Mongo Class, которые не найдены .
Я также не знаю, как добавить расширения (« ext -…. ») с композитором, которые не отображаются в https://packagist.org/
Я не могу найти решение с этой информацией: https://devcenter.heroku.com/articles/php-support#extensions
Расширение mongo
теперь поддерживается: https://devcenter.heroku.com/changelog-items/467 – нет необходимости в пользовательских buildpacks.