1

ldap_bind をテストしているときは、ldap サーバーと同じドメイン上にあるためテスト マシンで動作しましたが、コードを Web ホスティングに移動すると

Warning: ldap_bind() [function.ldap-bind]: Unable to bind to server: Can't contact LDAP server in /home 

そして、私はldapサーバーと同じドメインのブラウザからアクセスしているので、ホスティングによってldapサーバーに到達する必要がありますか?

            <?php
            // using ldap bind
            $ldaprdn  = 'user';     // ldap rdn or dn
            $ldappass = 'pass';  // associated password
            // connect to ldap server
            $ldapconn = ldap_connect("server.com")    or die("Could not connect to LDAP server.");
            if ($ldapconn) {
                // binding to ldap server
                $ldapbind = ldap_bind($ldapconn, $ldaprdn, $ldappass);
                // verify binding
                if ($ldapbind & strlen($ldappass)>0) {
                   echo "H LDAP bind successful...";
                } else {
                    echo "LDAP bind failed...";
                }
            }
            ?>
4

2 に答える 2

0

単純な BIND 操作には、DN のコンポーネントだけでなく、DN が必要です。

于 2013-09-26T00:31:23.887 に答える
0

私の側からのいくつかのチェックポイント:

  • SSL経由でLDAPSを使用しているようですので、証明書がWebホスティング環境のホストのトラストストアにあることを確認してください。
  • IP の代わりにホスト名を使用している場合は、これを試してください: $ip = gethostbyname('ldap.example.com'); $ldapconn = ldap_connect($ip);

  • また、デフォルトでない場合は LDAP ポートを確認し、デフォルトでない場合は指定できます。

于 2013-09-25T09:31:23.890 に答える