it-swarm.com.ru

Не удается установить mongodb doctrine в symfony2 с помощью composer

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

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

  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, кто-нибудь знает, в чем проблема? Я сомневаюсь, что doctrine не может найти расширение Монго .. спасибо!

12
Sekai

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

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

Это оно! 

19
Sekai

для OSX:

brew install php56-mongo

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

источник:

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

1
Dung

Linux

Чтобы установить PHP-расширение MongoDB, запустите:

Sudo apt-get install php-mongo

Смотрите также: Самый простой способ установить расширение Mongodb PHP в Ubuntu 13.10 (дерзкий)?

0
kenorb