簡體   English   中英

致命錯誤:調用未定義函數:ldap_connect()

[英]Fatal error: Call to undefined function: ldap_connect()

使用 WAMP 時出現此錯誤:

致命錯誤:調用未定義函數: ldap_connect()

我已經編輯了php.ini文件夾並啟用了php_ldap.dll

出於某種原因,當我打開它們時,只有一些擴展顯示在phpinfo() 我已經重新啟動了 Apache 並重新啟動了我的計算機。

如果您是 Windows 用戶,這是使用XAMPP時的常見錯誤,因為默認情況下未啟用LDAP

您可以按照以下步驟確保LDAP在您的XAMPP

  • [Your Drive]:\\xampp\\php\\php.ini :在此文件中取消注釋以下行:

     extension=php_ldap.dll
  • 將文件: libsasl.dll ,從[Your Drive]:\\xampp\\php[Your Drive]:\\xampp\\apache\\bin (注意:只有在版本為5.6.28之前的 XAMPP 才需要移動文件)

  • 重新啟動阿帕奇。

  • 您現在可以使用 LDAP 模塊的功能了!

如果您使用 Linux:

對於 php5:

sudo apt-get install php5-ldap

對於 php7:

sudo apt-get install php7.0-ldap

如果您使用的是最新版本的 PHP,您可以這樣做

sudo apt-get install php-ldap

運行上面的命令應該可以解決問題。

如果由於任何原因它不起作用,請檢查您的 php.ini 配置以啟用 ldap,刪除extension=ldap之前的分號以取消注釋,保存並重新啟動 Apache

將 PHP 的路徑添加到 Windows 系統路徑。 該路徑應包含php.exe

添加路徑后打開一個新的命令提示符並通過鍵入確保php.exe在路徑中

C:\>php --help

從上面看到正確的幫助消息后,在php.ini啟用php_ldap.dll擴展

同時將php_ldap.dllphp/ext目錄復制到apache/bin文件夾

重新啟動 wamp 和phpinfo()現在將顯示 ldap 已啟用。

  • [您的驅動器]:\\xampp\\php\\php.ini:在此文件中取消注釋以下行:

    擴展名=php_ldap.dll

  • 將文件:libsasl.dll,從 [Your Drive]:\\xampp\\php 移動到 [Your Drive]:\\xampp\\apache\\bin 重新啟動 Apache。 您現在可以使用 LDAP 模塊的功能了!

打開XAMMP php.ini文件(默認路徑為C:\\xammp\\php\\php.ini),將代碼(;extension=ldap)改為extension=php_ldap.dll並保存。 重新啟動 XAMMP 並保存。

配置文件

; Notes for Windows environments :
;
; - Many DLL files are located in the extensions/ (PHP 4) or ext/ (PHP 5+)
;   extension folders as well as the separate PECL DLL download (PHP 5+).
;   Be sure to appropriately set the extension_dir directive.
;
extension=bz2
extension=curl
extension=fileinfo
extension=gd2
extension=gettext
;extension=gmp
;extension=intl
;extension=imap
;extension=interbase
extension=php_ldap.dll

我的服務器是帶有 Apache 24 的 Windows Server 2016,也是錯誤的。 移動文件:libsasl.dll,從 c:\\php 到 c:\\apache\\bin 重新啟動 Apache。 成功!!!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM