3

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ました。ldapLDAP に関連する問題は URL にポートを追加することで解決されましたが、まだ ldaps の問題がありました。ldap_start_tls ( resource $link )とにかく、ホスト名のみを使用して(URL形式なしで)接続した後、使用することでなんとかバイパスできました 。

4

2 に答える 2

0

SSL で LDAP を使用している場合を除き、関数ldap://の第 1 パラメーターで指定する必要はありませんldap_connect()

したがって、ldap_connect('hostname')正しいです。

注: SSL を使用する LDAP の場合は、 を使用できますldap_connect('ldaps://hostname')

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

于 2013-05-20T09:58:23.130 に答える