Ich arbeite schon seit einiger Zeit mit einer WAMP-Installation mit aktiviertem LDAP und alles läuft reibungslos. Jetzt muss ich jedoch eine andere Maschine einrichten und kann LDAP aus irgendeinem Grund nicht aktivieren.
Ich habe die Ausgabe von überprüft phpinfo()
und der LDAP-Abschnitt ist nicht da. Ich habe bearbeitet php.ini
die Zeile auskommentieren:
extension = php_ldap.dll
Ich habe auch den Dateipfad überprüft, der nach Erweiterungen und der Datei durchsucht wird php_ldap.dll
ist an der richtigen Stelle.
Ich bin positiv Ich bearbeite das Recht php.ini
Datei, da ich den angezeigten Dateipfad überprüft habe phpinfo()
und ich kann auch andere Erweiterungen erfolgreich aktivieren/deaktivieren.
Ich habe Apache nach jeder vorgenommenen Änderung neu gestartet.
Während ich dies googelte, waren die einzigen Lösungen, die ich fand, die oben genannten, plus ein oder zwei Erwähnungen der Bearbeitung von Windows PATH
Variable, um den Pfad zu enthalten php.ini
? Ich habe es versucht, obwohl es für mich keinen Sinn ergab (wie ich bereits weiß php.ini
wird geparst). Ich habe auch meine vorherige Installation auf dem anderen Computer überprüft und soweit ich sehen kann, habe ich nie irgendwelche PHP-Verzeichnisse zu hinzugefügt PATH
auf dieser Maschine
Bearbeiten Sie mit vollständiger Antwort
Franks Antwort unten führte mich zur Lösung, also dachte ich, ich würde jetzt alles konsolidieren.
So aktivieren Sie die LDAP-Unterstützung auf einem WAMP-Server:
- Kommentieren
extension = php_ldap.dll
inphp.ini
- WICHTIG: Stellen Sie sicher, dass Sie das Recht bearbeiten
php.ini
indem Sie die Ausgabe von überprüfenphpinfo()
- Überprüf den
php.ini
Datei für den Speicherort Ihres Erweiterungsverzeichnisses - Prüfe das
php_ldap.dll
befindet sich in diesem Verzeichnis - (DER SCHRITT, DEN ICH VERPASST HABE) Finden Sie die Dateien
libeay32.dll
undssleay32.dll
und fügen Sie ihr Verzeichnis zum Windows PATH hinzu - Starten Sie Apache neu. Wenn LDAP aktiviert ist, wird es in der Ausgabe von einen Abschnitt darüber geben
phpinfo()
Hier gibt es ein paar Hinweise: php.net/manual/en/ldap.installation.php . Beachten Sie, dass Sie zwei weitere DLLs hinzufügen müssen
libeay32.dll and ssleay32.dll
. Möglicherweise müssen Sie auch mit kompilieren--with-ldap
– Frank Bauer
11. Januar 2012 um 21:04 Uhr
Hm … Ich habe jetzt keinen Zugriff auf die Maschine, aber ich habe das Gefühl, dass ich das brauche. Ich habe oben erwähnt, dass ich das php.ini-Verzeichnis zu PATH hinzugefügt habe, vielleicht habe ich etwas falsch verstanden, das besagt, dass das Erweiterungsverzeichnis zum PATH hinzugefügt werden soll. Ich habe die beiden DLL-Dateien möglicherweise direkt in system32 kopiert, als ich das letzte Mal eingerichtet habe, also hätte ich keine Hinweise gefunden, als ich den PATH dieses Computers überprüft hätte
– Ciaran Phillips
11. Januar 2012 um 21:13 Uhr
@FrankFarmer es funktioniert jetzt! Diese beiden Dateien befanden sich im selben Verzeichnis wie das
php.ini
war drin, wurde aber offensichtlich nicht gefunden. Ich habe dieses Verzeichnis zum Windows PATH hinzugefügt und LDAP wurde aktiviert! Ich habe die erste Maschine (die funktionierte) danach erneut auf diese Dateien überprüft, sie befanden sich im Standard-Erweiterungsordner von PHP. Vielleicht reicht es also aus, sie dorthin zu kopieren, anstatt die PATH-Variable zu verwenden. Ich habe damals nicht daran gedacht, nachzusehen, aber morgen früh werde ich diese Dateien verschieben und neu starten. Dann melde ich mich hier nochmal, damit alles abgedeckt ist.– Ciaran Phillips
12. Januar 2012 um 20:20 Uhr
@FrankFarmer Dein Kommentar führte direkt zur Lösung, also wenn du eine Antwort posten möchtest, werde ich es akzeptieren
– Ciaran Phillips
12. Januar 2012 um 20:23 Uhr
als ich gesehen habe
php.ini
diese einreichen(extension = php_ldap.dll)
war nicht da ich habe gerade diese zeile hinzugefügt und ldap aktiviert.– Makarand Mähne
1. Mai 2014 um 18:41 Uhr