[英]SSH2 dll not being loaded - windows server 2008 64bit, php 5.3.5 32bit, apache 32 bit
[英]Can not connect to LDAPS server from PHP 5.5.4 on Windows 7 64bit, Apache 2.4
我无法从PHP( PHP 5.5.4,Apache 2.4,Windows 7 64bit )连接到LDAPS服务器(第三方)。 当我使用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
文件夹和带有\\Apache
文件夹和\\PHP
文件夹的\\binaries
文件夹。 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测试服务器。
问题已经解决了。 注意:机器上没有安装Openldap。
解决方案是设置Windows系统变量LDAPCONF,值例如为c:\\users\\user\\.ldaprc
并在文件.ldaprc
设置证书的路径,例如TLS_CACERT c:\\users\\user\\.ssh\\ldap-ca.pem
或TLS_REQCERT never
,两者都在工作。
然后,从控制台或通过浏览器通过Apache的连接脚本运行正常。
conf的默认搜索路径是c:\\ users \\ user \\,但是对于通过Apache运行的浏览器应用程序,必须设置系统变量LDAPCONF。
希望对您有所帮助!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.