El controlador MongoDB para PHP debe funcionar en cualquier sistema: Windows, Mac OS X, Unix, y Linux; pequeñas y grandes máquinas; y plataformas de 32- y 64-bits; PHP 5.1, 5.2, y 5.3.
Esta extensión » PECL no se distribuye con PHP. Esta página proporciona información especifica acerca de la instalación en diferentes sistemas y solución de problemas que otros usuarios han resuelto.
Ejecute:
$ sudo pecl install mongo
Si se está usando CentOS o Redhat, se puede isntalar desde un » RPM.
Agregar la siguiente línea en el fichero php.ini:
extension=mongo.so
Si pecl se quedará sin memoria al instalar, asegúrese de que memory_limit en php.ini sea de al menos de 32MB.
Para los desarrolladores de controloladores y gente interesada en las últimas correcciones, puede compilar el controlador desde las últimas versiones en » Github. Ir a Github y presione en el botón "download". Ejecute:
$ tar zxvf mongodb-mongodb-php-driver-<commit_id>.tar.gz $ cd mongodb-mongodb-php-driver-<commit_id> $ phpize $ ./configure $ sudo make install
Realice los siguientes cambios en php.ini:
Asegúrese de que la variable extension_dir este apuntando a la ubicación de mongo.so. El build se mostrará donde se encuetre instalado el controlador de PHP, la salida será algo similar a esto:
Installing '/usr/lib/php/extensions/no-debug-zts-20060613/mongo.so'
$ php -i | grep extension_dir extension_dir => /usr/lib/php/extensions/no-debug-zts-20060613 => /usr/lib/php/extensions/no-debug-zts-20060613
Para cargar la extensión en el arranque de PHP, agregar una línea:
extension=mongo.so
Si su sistema no puede encontrar autoconf, necesitas instalar Xcode (disponible en el DVD de instalación).
Si usa XAMPP, debe compilar el driver con el siguiente comando:
sudo /Applications/XAMPP/xamppfiles/bin/pecl install mongo
Si usa MAMP ( o XAMPP y el comando anterior no funciona), los binarios precompilados están disponibles en » Github (descargue la última versión con "osx" junto con el nombre que corresponda a la versión de PHP). Extraer mongo.so desde el fichero y añadalo al directorio de extensiones de MAMP o XAMPP. Agregar
extension=mongo.so
Gentoo tiene un paquete para el driver de PHP que se llama dev-php5/mongo que puede ser instalado con:
$ sudo emerge -va dev-php5/mongo
Si se utiliza PECL, quizá obtiene un error de versión incorrecta en libtool. Compile desde las fuentes que necesite y ejecute aclocal y autoconf.
$ phpize && aclocal && autoconf && ./configure && make && make install
Incluye Fedora y CentOS
En estos sistemas, la configuración por omisión de Apache no permite a las peticiones establecer conexiones de red, haciendo que el driver genere errores de "Permiso denegado" cuando se intenta conectar a la base de datos. Si este fuera el caso, pruebe a ejecutar:
$ /usr/sbin/setsebool -P httpd_can_network_connect 1
Los binarios precompilados para cada versión están disponibles en » Github para una gran variedad de combinaciones de versiones, seguridad en hilos, y bibliotecas VC. Descomprima el fichero y copie php_mongo.dll en el directorio de extensiones de PHP ("ext" por omisión).
El último (no publicado) código se compila en archivos binarios en Windows en cada commit. El fichero zip cuenta los ficheros php_mongo.dll y version.txt. Por favor mantega el fichero version.txt de modo que si presenta una pregunta o problema, pueda proporcionar a los desarrolladores la versión exacta en uso. (El número es largo y sin sentido, pero tendrá sentido para los desarrolladores)
Para obtener las últimas correcciones (y posiblemente errores), descargue el binario correspondiente a la versión instalada de PHP:
Agregar la siguiente línea al fichero php.ini:
extension=php_mongo.dll
Un gran número de personas han creado excelentes tutoriales de instalación de controlador de PHP.
» PHP 5.3.1 con Xdebug, MongoDB y Lithium en Ubuntu 9.10 / Apache 2.2
Un excelente video que te llevará paso a paso en la instalación de Apache, PHP, Xdebug, MongoDB, y Lithium por Jon Adams.
» Instalando MongoDB y el controlador de PHP en Ubuntu 9.04
Artículo en castellano por Javier Aranda (» Traducción en inglés).
» OS X: Instalando MongoDB y el controlador de PHP
Por Matt Butcher.