Невозможно включить PHP LDAP, хотя я отредактировал php.ini и php_ldap.dll находится в нужном месте? - PullRequest
24 голосов
/ 12 января 2012

Я давно работаю с установкой WAMP с включенным LDAP, и все идет гладко. Теперь я должен настроить другую машину и по какой-то причине не могу включить LDAP.

Я проверил вывод phpinfo(), а раздел LDAP отсутствует. Я отредактировал php.ini, чтобы раскомментировать строку:

extension = php_ldap.dll

Я также проверил путь к файлу для поиска расширений, и файл php_ldap.dll находится в нужном месте.

Я положительный Я редактирую правильный файл php.ini, так как я проверил путь к файлу, отображаемый phpinfo(), а также я могу успешно включить / отключить другие расширения.

Я перезагружал Apache после каждого внесенного изменения.

При поиске в Google, единственное решение, которое я нашел, было выше, плюс одно или два упоминания о редактировании переменной Windows PATH, чтобы включить путь к php.ini? Пробовал, хотя для меня это не имело смысла (как я уже знаю php.ini анализируется). Я также проверил мою предыдущую установку на другом компьютере, и из того, что я вижу, я никогда не добавлял никаких каталогов PHP в PATH на этом компьютере

Редактировать с полным ответом

Ответ Фрэнка, приведенный ниже, привел меня к решению, поэтому я решил, что сейчас все объединю.

Чтобы включить поддержку LDAP на сервере WAMP:

  1. Раскомментировать extension = php_ldap.dll в php.ini
  2. ВАЖНО : Убедитесь, что вы редактируете правильный php.ini, проверив вывод phpinfo()
  3. Проверьте файл php.ini для определения местоположения вашего каталога расширений
  4. Убедитесь, что php_ldap.dll находится в этом каталоге
  5. ( ШАГ, КОТОРЫЙ Я ПРОПУСТил ) Найдите файлы libeay32.dll и ssleay32.dll и добавьте их каталог в ПУТЬ Windows
  6. Перезагрузите Apache. Если LDAP включен, в выводе будет phpinfo()

Ответы [ 2 ]

10 голосов
/ 13 января 2012

Здесь есть несколько подсказок: http://php.net/manual/en/ldap.installation.php.Обратите внимание, что вам нужно добавить две другие библиотеки DLL libeay32.dll и ssleay32.dll.Вам также может понадобиться скомпилировать с --with-ldap

4 голосов
/ 25 марта 2014

Я следовал этим инструкциям, но все еще не мог загрузить LDAP в моем phpinfo ().Журналы Apache показали при запуске следующее нефатальное сообщение: ######/php5.4.16/ext/php_ldap.dll - The specified module could not be found. in Unknown on line 0

В конце я снова посмотрел на phpinfo () и увидел, что вместо моей пользовательской переменной PATH используется системная переменная PATH ион не содержал правильный путь к корню PHP и папке расширений PHP.Просто добавив их в ####\php\php5.4.16;####\php\php5.4.16\ext; и перезапустив Apache, решил проблему.Надеюсь, что это может помочь кому-то еще.

...