gpt4 book ai didi

php - 无法从 Windows 7 64 位 Apache 2.4 上的 PHP 5.5.4 连接到 LDAPS 服务器

转载 作者:太空宇宙 更新时间:2023-11-03 14:54:23 24 4
gpt4 key购买 nike

我无法从 PHP(PHP 5.5.4、Apache 2.4、Windows 7 64 位)连接到 LDAPS 服务器(第 3 方)。当我使用 userdn 和密码尝试 ldap_bind() 函数时,我收到 - Unable to bind to server: Can't contact LDAP server.

我有来自 LDAPS 服务器的自签名证书,但我不知道将 PEM 文件 (Base64) 或类似 conf.file 的文件放在哪里(我已经阅读了很多关于此的答案,但对我来说没有任何用处 -例如 c:\openldap\sysconf\ldap.conf, TLS_REQCERT 从来没有等)。

开发文件夹是 D:\WebDev,其中 \www 文件夹包含项目,\binaries 文件夹包含 \Apache 文件夹和 \PHP 文件夹。 PHP 是 Apache 的一个模块,Apache 由 httpd.exe --standalone --console 启动。

Openssl s_client -connect xxxx -CAfile xxxx 到 LDAPS 服务器运行良好,返回代码为 0。如果没有 -CAfile,我会得到 code 19(证书链中的自签名证书)

没有 SSL 的 LDAP 对我来说工作正常,我已经尝试了一些免费的在线 LDAP 测试服务器。

最佳答案

问题解决了。注意:机器上没有安装Openldap。

解决方案是设置 Windows 系统变量 LDAPCONF,例如值为c:\users\user\.ldaprc 并在文件 .ldaprc 中设置证书的路径,例如TLS_CACERT c:\users\user\.ssh\ldap-ca.pemTLS_REQCERT never,两者都有效。

然后来自控制台或来自浏览器的 Apache 的连接脚本运行正常。

conf 的默认搜索路径是 c:\users\user\,但对于通过 Apache 运行的浏览器应用程序,必须设置系统变量 LDAPCONF。

希望对您有所帮助!

关于php - 无法从 Windows 7 64 位 Apache 2.4 上的 PHP 5.5.4 连接到 LDAPS 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31051033/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com