一、如果是源碼編譯
[root@DaMoWang php-7.2.7]# ls /usr/local/php/lib/php/extensions/no-debug-non-zts-20170718/ opcache.a opcache.so # 出現告警是因爲ldap模塊不存在,須要編譯生成此模塊並重新加載
到源碼包的解壓目錄下,沒有保存源碼文件的話 , 下載相同版本的php進行解壓 , 進行源碼編譯ldap模塊(其他模塊如果缺失編譯方法一樣)
[root@DaMoWang php-7.2.7]# cd /usr/src/php-7.2.7/ext/ldap/ # 進入模塊所在的源碼位置 [root@DaMoWang ldap]# ls config.m4 config.w32 CREDITS ldap.c ldap.mak LDAP_Win32_HOWTO.txt php_ldap.h tests [root@DaMoWang ldap]# /usr/local/php/bin/phpize # 編譯PHP擴展的工具,主要是根據系統信息生成對應的configure文件 Configuring for: PHP Api Version: 20170718 Zend Module Api No: 20170718 Zend Extension Api No: 320170718 [root@DaMoWang ldap]# ./configure --with-php-config=/usr/local/php/bin/php-config --with-ldap && make && make install #配置 編譯 安裝
執行過程中可能會有如下報錯
configure: error: Cannot find ldap.h 解決辦法 : yum -y install openldap openldap-devel
configure: error: Cannot find ldap libraries in /usr/lib 解決辦法 : cp -frp /usr/lib64/libldap* /usr/lib/
[root@DaMoWang ldap]# ls /usr/local/php/lib/php/extensions/no-debug-non-zts-20170718/ opcache.a opcache.so ldap.so [root@DaMoWang ldap]# vim /etc/php.ini # 編輯php.ini # 找到 ;extension=ldap 的行 把註銷去掉 , 5版本的php添加extension=ldap.so
保存退出 , 重啓web服務
如果模塊存在 , 直接修改php.ini文件即可
二、如果是yum安裝
[root@DaMoWang ldap]# yum -y install php-ldap
然後重啓web服務