Подтвердить что ты не робот

Невозможно установить доктрину mongodb в symfony2 с композитором

Я следил за официальной документацией

когда я запускаю обновление для компоновщика, у меня есть эта ошибка: Ваши требования не могут быть разрешены к устанавливаемому набору пакетов.

  Problem 1
    - doctrine/mongodb 1.0.4 requires ext-mongo >=1.2.12,<1.6-dev -> the requested PHP extension mongo is missing from your system.
    - doctrine/mongodb 1.0.3 requires ext-mongo >=1.2.12,<1.5-dev -> the requested PHP extension mongo is missing from your system.
    - doctrine/mongodb 1.0.2 requires ext-mongo >=1.2.12,<1.4-dev -> the requested PHP extension mongo is missing from your system.
    - doctrine/mongodb 1.0.1 requires ext-mongo >=1.2.12,<1.4-dev -> the requested PHP extension mongo is missing from your system.
    - doctrine/mongodb 1.0.0 requires ext-mongo >=1.2.12,<1.4-dev -> the requested PHP extension mongo is missing from your system.
    - doctrine/mongodb-odm 1.0.0-BETA9 requires doctrine/mongodb 1.0.* -> satisfiable by doctrine/mongodb[1.0.0, 1.0.1, 1.0.2, 1.0.3, 1.0.4].
    - Installation request for doctrine/mongodb-odm 1.0.0-BETA9 -> satisfiable by doctrine/mongodb-odm[1.0.0-BETA9].

Когда я запускаю php -m, я не могу найти расширение mongo, но сервер работает, и я могу использовать Mongo на PHP, кто-нибудь знает, в чем проблема? Я сомневаюсь, что доктрина не может найти расширение манго. благодарю!

4b9b3361

Ответ 1

Я исправил это! Как и ожидалось, именно из-за расширения так вот шаги, которые нужно предпринять, если вы столкнулись с той же проблемой, что и я: the requested PHP extension mongo is missing from your system.

  • запустите команду: php --ini, вы увидите, что все файлы конфигурации разобраны! Для меня я использую PHP-fpm, я думал, что единственный файл php.ini необходим внутри fpm-папки, но я был не прав, там был файл php.ini внутри папки CLI, и это папка, которая сообщает серверу, какие модули загружены, и это точно тот же файл, что доктрина читает расширения из.
  • Откройте CLI/php.ini и добавьте эту строку в конец extension=mongo.so.
  • Перезапустить PHP: service php5-fpm restart

Что это!

Ответ 2

для OSX:

brew install php56-mongo

если он выйдет из строя: внимательно прочитайте сообщение об ошибке и выполните его, чтобы выполнить повторную команду.

Источник:

http://php.net/manual/en/mongo.installation.php#mongo.installation.osx