PHP 7 無法載入LDAP的解決方式

本機環境:Apache 2.4.41 + PHP 7.3.10

今天測試LDAP認證程式時,發生HTTP ERROR 500的錯誤,從Apache的error.log中發現
Unable to load dynamic library 'ldap'(tried: C:\\AppServ\\php7\\ext\\ldap...

查了不少文章,大部份是舊版本的問題處理,試了很多方法,像是檢查LDAP模組是否啟用,路徑…等等,最後終於找到解決方法,便將過程記錄下:

首先修改PHP目錄下的php.ini
  1. 檢查extension_dir是否與實際目錄位置一致(extension_dir="C:\AppServ\php7\ext")
  2. 把LDAP的註解拿掉(extension=ldap)
  3. 重新啟動Apache

重新啟用之後,發現error.log仍然出現錯誤訊息,最後找到一個與我有類似環境及狀況的文章,原因似乎是Apache的bin目錄缺少了libsasl.dll,其解決方式就是把PHP目錄下的libsasl.dll複製一份到該目錄(C:\AppServ\Apache24\bin),然後再重新啟動Apache。

再次打開error.log,錯誤訊息不再出現,認證程式也順利執行。

參考連結:https://www.cnblogs.com/breeze-zZ/p/11170982.html



留言

張貼留言

這個網誌中的熱門文章

工具-使用Notepad++編輯XML文件

不負責的Google Drive 介面語系問題排解

LimeSurvey安裝筆記