使用URL的PHP​​ LDAP连接

时间:2013-05-20 09:42:00

标签: php ldap

尝试使用URL('ldap:// hostname /')从使用PHP5的Ubuntu服务器连接到LDAP服务器时遇到问题。 当我不使用URL格式($server = 'hostname')时,代码工作正常。

代码:

$server = 'ldap://hostname/';

$ldapconn = ldap_connect($server, 3268) or die("Could not connect to LDAP server.");

if ($ldapconn) {
    $ldapbind = @ldap_bind($ldapconn, 'username', 'password');
    $error_ldap_code =  ldap_errno($ldapconn) ;
    if($error_ldap_code==0) {
        echo 'Connected!!!';
    }
}

编辑:

我需要ldaps,但我看到ldap我有同样的问题。虽然通过在URL中添加端口解决了与ldap相关的问题,但我仍然遇到了ldaps问题。无论如何,在仅使用主机名(没有URL格式)连接后,我设法绕过它ldap_start_tls ( resource $link )

2 个答案:

答案 0 :(得分:2)

尝试在URL中指定端口 - 它不是标准端口389.所以'ldap:// hostname:3268'?

答案 1 :(得分:0)

除非您使用LDAP和SSL,否则您无需在ldap://函数的第一个参数中指定ldap_connect()

因此,ldap_connect('hostname')是正确的。

注意:对于使用SSL的LDAP,您可以使用ldap_connect('ldaps://hostname')

参考:http://php.net/manual/en/function.ldap-connect.php