作曲家不安装mongodb ubuntu

时间:2016-03-10 05:34:00

标签: mongodb ubuntu composer-php

我跑了:composer require mongodb/mongodb。但它给了我以下错误:

有错误:

- mongodb/mongodb 1.0.1 requires ext-mongodb ^1.1.0 -> the requested PHP extension mongodb is missing from your system.
- mongodb/mongodb 1.0.0 requires ext-mongodb ^1.1.0 -> the requested PHP extension mongodb is missing from your system.
- Installation request for mongodb/mongodb ^1.0 -> satisfiable by mongodb/mongodb[1.0.0, 1.0.1].

我试过了:composer show -p

然后它给了我:

......
ext-iconv           0         The iconv PHP extension
ext-mcrypt          0         The mcrypt PHP extension
ext-mhash           0         The mhash PHP extension
ext-mongo           1.6.12    The mongo PHP extension
ext-mysql           1.0       The mysql PHP extension
ext-mysqli          0.1       The mysqli PHP extension
......

为什么我收到错误?

php -m

..... 
libxml 
mbstring 
mcrypt 
mhash 
mongo 
mysql 
mysqli 
openssl 
pcntl
pcre
 PDO 
 .....

我正在使用ubuntu 14.04 LTS

3 个答案:

答案 0 :(得分:15)

  1. 安装php驱动程序$ sudo pecl install mongodb
  2. 创建扩展程序文件$ sudo nano /etc/php/*version*/mods-available/mongodb.ini并在里面写: extension = mongodb.so
  3. 为此文件$ sudo ln -sv /etc/php/*version*/mods-available/mongodb.ini /etc/php/*version*/apache2/conf.d/20-mongodb.ini
  4. 创建符号链接
  5. 为此文件$ sudo ln -sv /etc/php/*version*/mods-available/mongodb.ini /etc/php/*version*/cli/conf.d/20-mongodb.ini
  6. 创建其他符号链接
  7. 重新启动apache或使用的服务器$ sudo service apache2 restart
  8. 可能需要重新安装jenssegers / mongodb:$ composer require jenssegers/mongodb

答案 1 :(得分:7)

快捷方便,只需:

  • sudo pecl install mongodb
  • sudo nano /etc/php5/apache2/php.ini,添加(在底部或任何地方):

; mongodb extension=mongodb.so

  • sudo nano /etc/php5/cli/php.ini,添加(在底部或任何地方):

; mongodb extension=mongodb.so

  • 重新启动网络服务器(cli不需要):sudo service apache2 restart

答案 2 :(得分:4)

我跑:

sudo apt-get install libpcre3-dev

然后:

pecl install mongodb

并将extension=mongodb.so添加到cli/php.ini

的底线