1
連接到當連接到LDAP服務器的LDAP服務器,可以提供用空格分隔多個主機:檢索你在PHP
$resource = ldap_connect('ldap://dc01.corp.acme.org ldap://dc02.corp.acme.org');
但是,有沒有方法來檢索哪一個實際上是成功綁定後使用?
連接到當連接到LDAP服務器的LDAP服務器,可以提供用空格分隔多個主機:檢索你在PHP
$resource = ldap_connect('ldap://dc01.corp.acme.org ldap://dc02.corp.acme.org');
但是,有沒有方法來檢索哪一個實際上是成功綁定後使用?
不幸的是沒有真正的好方法。沒有通過檢查的RootDSE的AD特定的方式:
$con = ldap_connect('ldap://dc1 ldap://dc2');
ldap_set_option($con, LDAP_OPT_PROTOCOL_VERSION, 3);
ldap_set_option($con, LDAP_OPT_REFERRALS, 0);
ldap_bind($con, '[email protected]', 'correct-horse-battery-staple');
$sr = ldap_read($con, '', 'objectClass=*', ['dnshostname']);
$entry = ldap_get_entries($con, $sr);
// This is the DC we are on...
echo $entry[0]['dnshostname'][0];
您可以使用['ldap_get_option'](http://php.net/manual/en/function.ldap-get-option.php )與'LDAP_OPT_HOST_NAME'。 –
不幸的是,這會返回兩個主機名與刪除的協議:'dc01.corp.acme.org:389 dc02.corp.acme.org:389' –
啊,太糟糕了。我以前沒有嘗試過,但認爲它看起來很有希望。 –