Como posso ativar o LDAP em PHP - Windows Server 2008

3

Eu instalei o PHP no meu Win Server 2008 usando o Web Platform Installer. A instalação foi bem-sucedida e posso exibir corretamente a página phpinfo do meu diretório virtual. Como posso ativar o suporte LDAP? c:\Program Files\PHP\Ext\ não contém php_ldap.dll . Preciso baixar este arquivo primeiro?

Editar:

  • Estou usando o Win Svr 2008 Standard Edition, atualizado para o patch mais recente
  • A versão do PHP é 5.2.11
  • extension_dir é c: \ Arquivos de programas \ PHP \ ext \ (conforme confirmado por phpinfo ())
  • Eu já baixei o pacote zip completo do PHP (10 megas), e: copythe conteúdo de ext dir para c: \ Program Arquivos \ PHP \ ext \
  • Eu já modifiquei o arquivo php.ini para incluir a extensão php_ldap.dll
  • Aqui está a captura de tela da minha página de teste do phpinfo

e a extensão LDAP ainda não está funcionando.

    
por Salamander2007 08.10.2009 / 10:47

7 respostas

3

Sua melhor aposta seria baixar a versão mais recente do PHP do site PHP.net e obter a DLL a partir disso e extrair o arquivo DLL a partir disso.

Não sei por que não está incluído no instalador da plataforma da web, parece um pouco estranho.

    
por 08.10.2009 / 11:00
2

Eu tive que ativar o módulo no IIS

inicie o iis manager no windows server 2008r2

navegue até o site raiz.

faça o download, instale e inicie o gerenciador do php (não será instalado com o WordPress sobre o WPI).

role até o final e clique em "Ativar ou desativar uma extensão"

desloque-se para a secção desactivada, clique em php_ldap.dll para realçar e, na secção superior direita, em acções, clique em "Activar"

sair e ldap está instalado para o PHP 5.3.1 que foi instalado através do "Microsoft Web Platform Installer" quando você instala o "WordPress".

    
por 03.04.2012 / 20:42
2

No meu caso:
 * Windows Server 2008 R2
 * PHP 5.3 via WebPlatformInstaller
 * IIS

A linha de erro foi:

PHP Fatal error:  Call to undefined function ldap_connect() in ...Tageskonto.php on line 19

ajudou a estender o arquivo
 * c: \ arquivos de programas (x86) \ php \ v5.3 \ php.ini
para carregar a dll:

[ExtensionList]
extension=php_ldap.dll
    
por 15.07.2014 / 15:42
0

No Linux, o LDAP é frequentemente uma extensão opcional para o PHP e precisa ser instalado separadamente. Este pode ser o caso do Windows também.

    
por 08.10.2009 / 11:25
0

Se você não comentou o php_ldap.dll na seção de extensão do PHP, eu acredito que o PHP não lê corretamente php.ini .

  • IIRC Eu sempre instalei o PHP no caminho sem espaços no caminho (por exemplo, C:\PHP ).
  • Tente copiar C:\program files\php\php.ini para C:\windows\ e reinicie o Apache / IIS.

Talvez isso ajude você.

    
por 13.10.2009 / 08:30
0

Então, você pode precisar verificar as seguintes coisas em phpinfo () :

  1. Se você estiver usando o IIS, verifique se o processo de trabalho do IIS tem acesso de leitura no NTFS ao diretório "C: \ Program Files \ PHP". Este processo de trabalho pode ser SERVIÇO DE REDE ou IWAM_ < computername > ou SISTEMA LOCAL (espero que não).
  2. Quando você carregar phpinfo (); na saída, verifique as seguintes linhas para garantir que elas estejam onde você espera:   - extension_dir
      - Arquivo de configuração carregado
    Esses itens precisam estar onde você espera que eles estejam relatando e não carregados de algum outro lugar.
  3. Você também precisa adicionar arquivos ao "PATH" do sistema: libeay32.dll e ssleay32.dll , e provavelmente exigirá uma reinicialização do sistema para atender; e como alguns usuários documentaram, colocar o PATH próximo ao início da variável PATH pode eliminar alguns problemas. Isso está documentado aqui: link
por 13.10.2009 / 09:13
0

Eu não li a pergunta original o suficiente para ver que ele já estava habilitado php_ldap.dll, mas isso era problema meu.

Em uma instalação recente do WPI (início de 2014), o php_ldap.dll está lá e pronto para ser concluído, mas não está configurado em php.ini .

  1. A saída de phpinfo() não inclui a seção ldap
  2. Edite PHP.ini como administrador (consulte phpinfo () para o caminho completo ... o meu acontece em C:\Program Files (x86)\iis express\PHP\v5.4\php.ini
  3. O WPI coloca os módulos ativados na parte inferior do arquivo. Adicionar extension=php_ldap.dll
  4. phpinfo() mostra imediatamente a seção ldap.
por 20.01.2014 / 21:17