2011-04-20 47 views
20

Estoy intentando conectar con el servidor LDAP a través de PHP, pero me da el siguiente error:Fatal error: Llamada a ldap_connect función no definida() en ubuntu

Fatal error: Call to undefined function ldap_connect()

Cualquier ayuda sería muy apreciada.

Gracias de antemano, Roshan

+0

Im tratando de conectar a la ds abierta –

+2

No importa dónde intente conectarse - no ha instalado la extensión php ldap. – zerkms

+2

Estoy teniendo el mismo problema, pero con Solaris. Creo que _do_ tengo LDAP habilitado con PHP. Vea http://pastie.org/1982091 para la salida de phpinfo() y busque LDAP o "ldap". Debería ver '--with-ldap = shared,/opt/csw' entre otros. Entonces no sé qué más me estoy perdiendo. –

Respuesta

38

Asegúrese de que el LDAP extension esté instalado y habilitado. Esta respuesta asume que tienes PHP5, sin embargo, las cosas deberían funcionar de manera similar para PHP7 también.

Instalar extensión LDAP

No debe ser un paquete denominado como php5 en LDAP:

aptitude show php5-ldap 
Paquet : php5-ldap 
... 
Description : LDAP module for php5                                                   
This package provides a module for LDAP functions in PHP scripts. 

Por lo tanto, el paquete puede normalmente ser instalado como:

sudo apt-get install php5-ldap 

Si no usa apt-get, use el comando equivalente para el paquete age manager que usas

facilitar la ampliación LDAP

Para habilitar el paquete después de la instalación, puede utilizar este comando:

sudo php5enmod ldap 

Si recibe un mensaje de error en el comando anterior, significa que algo salió mal.

Nota: Después de habilitar el paquete, generalmente tiene que reiniciar/volver a cargar los servicios para que se reconozca el nuevo módulo habilitado. Para Apache, puede hacerlo a través de:

sudo service apache2 restart 

Si no se utiliza Apache, por favor utilice el comando equivalente para su servidor.

+0

Creo que deberíamos reiniciar el servidor después de la instalación. –

+5

Tendrá que reiniciar el servicio apache después de instalar este paquete. 'sudo service apache2 restart' debería hacer el truco en Ubuntu. –

+0

asegúrese de que después de instalar ldap hay una carpeta ldap.so en php lib y también se ha habilitado un ldap.ini agregado a la configuración php o la extensión ldap, algunas veces la instalación no se agrega, vuelva a ejecutar la instalación o agregue manualmente – Basav

4
sudo apt-get install php5-ldap 

Y no lo hacen miedo de google.

Cuestiones relacionadas