2011-05-23 40 views
0

我在尝试开发一个应用程序,它使用我们公司用于登录我们的计算机(即Active Directory)的相同登录名。 所以,我敢肯定哪个是我的用户和我的密码,但似乎每次我尝试绑定它会抛出:无法绑定到LDAP

警告:ldap_bind()[function.ldap-bind]:无法绑定到服务器:无法联系LDAP服务器

但ldap_connect成功。

所以,它必须是与用户名相关的东西。

我已经试过:

$user='cn=username,o=domainname'; 

$user='domainname\username'; 

没有成功。我有管理员访问域控制器,所以我可以找到任何需要的。

有人能为此带来一些亮光吗?

+0

你是从当前的网络可以连接到该服务器?也许你的ip应该在某个vlan中。 – 2011-05-23 17:50:44

+0

是的,我。这是一个只有30台电脑的小办公室,我也可以在网络浏览器中看到电脑。 – 2011-05-23 19:11:54

回答

0

致电ldap_connect时,您无法连接。请参阅PHP手册:

使用OpenLDAP 2.x.x时,ldap_connect()将始终返回一个资源,因为它实际上并未连接,只是初始化连接参数。实际连接发生在下一次调用ldap_ * funcs时,通常使用ldap_bind()。

我想你在这里有一些网络问题。以下情况之一:

  • 您的Web服务器无法解析LDAP服务器的主机名
  • 您的Web服务器可能无法连接到LDAP服务器(防火墙问题)
  • 您的Web服务器不能找到一个途径,到LDAP服务器(缺少路由)
  • 您指定的错误的端口
+0

我怎么找到问题在哪里? – 2011-05-23 17:48:00

+0

@Antonio Laguna:问题是您无法连接到LDAP服务器。您有主机名或端口错误,或者它没有运行。 – EJP 2011-05-24 07:04:20

+0

我认为这是一些防火墙问题。我会尽力弄清楚如何解决它 – 2011-05-24 12:26:54