【问题标题】:Can not connect to LDAPS server from PHP 5.5.4 on Windows 7 64bit, Apache 2.4无法在 Windows 7 64 位、Apache 2.4 上从 PHP 5.5.4 连接到 LDAPS 服务器
【发布时间】:2015-06-25 12:55:57
【问题描述】:

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

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

Development 文件夹是 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 (self-signed certificate in certificate chain)

没有 SSL 的 LDAP 对我来说很好,我尝试了一些免费的在线 LDAP 测试服务器。

【问题讨论】:

    标签: php windows apache ssl ldap


    【解决方案1】:

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

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

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

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

    希望对你有所帮助!

    【讨论】:

      猜你喜欢
      • 2017-04-04
      • 2017-06-08
      • 2011-12-08
      • 1970-01-01
      • 2012-08-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多