使用 URL 的 PHP LDAP 连接

标签 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 ) 绕过了它。

最佳答案

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

关于使用 URL 的 PHP LDAP 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16646659/

相关文章:

linux - 是否可以从 linux 机器查询 windows ldap 服务器

php - 在函数 PHP 中实例化类是不好的做法吗

php - 用 PHP 测试。我怎样才能确保一切正常运行?

c# - 事件目录 : DirectoryEntry member list <> GroupPrincipal. GetMembers()

java - InitialDirContext.search() 结果错误

php - 服务器不愿意执行。 PHP 中的 LDAP

php - 如何覆盖或编辑 yii2 中供应商目录的代码?

php - 如何在 PHP 中重定向到同一页面,但没有某些参数?

javascript - 无法在 jQuery 函数中返回 $.posted php 文件数据

c++ - 在客户端-服务器应用程序中使用 Active Directory 对用户进行身份验证