Попробовав в течение двух дней, чтобы запустить это;
sudo pecl install mongo
Я, наконец, сделал это и добавил расширение на php.ini, чтобы узнать, что это не сработает для меня.
Это то, что вывод установки был в конце;
Libraries have been installed in:
/tmp/pear/temp/pear-build-rootVYRzXc/mongo-1.5.8/modules
running: make INSTALL_ROOT="/tmp/pear/temp/pear-build-rootVYRzXc/install-mongo-1.5.8" install
Installing shared extensions: /tmp/pear/temp/pear-build-rootVYRzXc/install-mongo-1.5.8/usr/lib/php5/20090626/
Installing '/usr/lib/php5/20090626/mongo.so'
install ok: channel://pecl.php.net/mongo-1.5.8
# I edited etc/php54/php.ini here
sudo service apache2 restart
php --ri mongo
Extension 'mongo' not present.
Но когда я сделал mongo --version
я получил MongoDB shell version: 1.4.4
которая может быть из моей установки модуля. Может ли это заставить монго не загружаться?
При попытке;
$mongoConn = new MongoClient("mongodb://<user>:<pass>@proximus.modulusmongo.net:27017");
Я получил;
Fatal error: Class 'MongoClient' not found
Убедитесь, что mongo.so находится в файле extension_dir:
php -i | grep extension_dir
Затем cd в эту папку и проверьте наличие mongo.so.
Если есть, убедитесь, что у вас есть это в php.ini
extension=mongo.so
Если это не сработает: в некоторых виртуальных системах, например, на основе Docker, вам может потребоваться установить расширение как пользователя, связанного с "доменом" или экземпляром. Глобальная (root user) установка может не работать.
/usr/lib/php5/20090626
и mongo.so, а также расширение находится в /etc/php54/php.ini