我正在尝试将用户添加到我的LDAP服务器。但是我收到以下错误。
PHP Warning: ldap_add(): Add: Referral
Code:
$ds = ldap_connect("HOST","PORT");
if ($ds) {
ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3);
ldap_set_option($ds, LDAP_OPT_REFERRALS, 0);
$bind = ldap_bind($ds, "adminusername", "Passwrd");
echo $bind;
// prepare data
$base_dn = 'CN=Manus Test,OU=UserAccounts,DC=rk.com,DC=rk';
$info["givenName"]="manu";
$info["sn"]="Manu";
$info["uid"]="manus";
$info["homeDirectory"]="/home/";
$info["mail"]="manus@gmail.com";
$info["displayName"]= "Jdkd sjs";
$info["cn"] ="Manus Test";
//$info["userPassword"]=>user_hash;
$info["objectclass"][0] = "top";
$info["objectclass"][1] = "person";
$info["objectclass"][2] = "inetOrgPerson";
$info["objectclass"][3] = "organizationalPerson";
// add data to directory
$r = ldap_add($ds, $base_dn, $info);
echo "Bind result is " . $r . "<br />";
请让我知道任何建议。
答案 0 :(得分:0)
如果您正在与从属LDAP服务器(本质上是目录的只读副本)进行交谈,则可以返回引用。如果您知道您正在与托管副本的可写副本的服务器通信,则当DN基础不是该服务器托管的内容时,也会返回引用。
看看上面的代码,“ DC = rk.com,DC = rk”是不寻常的。我通常会看到“域”组件被破坏,因此rk.com变成了“ dc = rk,dc = com”。使用ldap浏览器验证目录中标准DN的模式。