我已经使用WAMP安装了很长一段时间,现在启用了LDAP,一切都很顺利。现在虽然我必须设置另一台机器,但由于某种原因我无法启用LDAP。
我检查了phpinfo()
的输出,但LDAP部分不存在。我修改了php.ini
以取消对该行的注释:
extension = php_ldap.dll
我还检查了要搜索扩展名的文件路径,文件php_ldap.dll
位于正确的位置。
我肯定我正在编辑正确的php.ini
文件,因为我检查了phpinfo()
显示的文件路径,而且我能够成功启用/禁用其他扩展。
每次更改后我都重新启动了Apache。
在谷歌搜索时,我发现的唯一解决方案是上面那些,加上一两个提及编辑Windows PATH
变量以包含php.ini
的路径?尝试它虽然它对我没有意义(因为我已经知道php.ini
正被解析)。我还检查了我在其他机器上的上一次安装,从我看到的内容我从未在该机器的PATH
上添加任何PHP目录
弗兰克在下面的回答让我得到了解决方案,所以我想我现在要巩固一切。
在WAMP服务器上启用LDAP支持:
extension = php_ldap.dll
php.ini
php.ini
phpinfo()
php.ini
文件中查看您的扩展程序目录的位置php_ldap.dll
是否位于该目录中libeay32.dll
和ssleay32.dll
并将其目录添加到Windows PATH phpinfo()
答案 0 :(得分:10)
这里有一些提示:http://php.net/manual/en/ldap.installation.php。请注意,您需要添加另外两个DLL libeay32.dll
和ssleay32.dll
。您可能还需要使用--with-ldap
答案 1 :(得分:4)
我按照这些说明操作但仍然无法在我的phpinfo()中加载LDAP。 Apache日志在启动时显示以下非致命消息:######/php5.4.16/ext/php_ldap.dll - The specified module could not be found. in Unknown on line 0
最后,我再次查看了phpinfo()并看到系统变量PATH正在被使用而不是我的用户变量PATH,并且它没有包含PHP的root和PHP&的正确路径#39;的扩展名文件夹。只需在####\php\php5.4.16;####\php\php5.4.16\ext;
中添加它们并重新启动Apache即可解决问题。希望这可以帮助其他人。
答案 2 :(得分:0)
我的环境
Windows 10
PHP 7.4.3
Apache 2.4.41
答案 3 :(得分:-1)
我使用phpstorm。如果找不到注释,只需在php.ini页面底部粘贴“ extension = php_ldap.dll”。不客气