This is my Action
public function loginAction()
{
$request= $this->getRequest();
if($request->isPost())
{
$username= $request->getPost('email');
$password= $request->getPost('password');
$auth = new AuthenticationService();
$adapter = new AuthAdapter(
array('server1'=>array(
'host' => '192.168.1.4',
'useStartTls' => false,
'useSsl' => false,
'accountDomainName' => 'coasting',
'accountDomainNameShort' => 'DOMAIN',
'accountCanonicalForm' => 3,
'accountFilterFormat' => '(&(objectClass=user)(sAMAccountName=%s))',
'baseDn' => 'CN=Users,DC=domain,DC=local',
'bindRequiresDn' => false,
'optReferrals' => false
)),
$username,
$password
);
$result = $auth->authenticate($adapter);
print_r($result);
}
}
运行此操作后,错误将显示' 0x7002:LDAP扩展未加载',
/var/www/coasting/vendor/zendframework/zendframework/library/Zend/Authentication/Adapter/Ldap.php(140):Zend \ Ldap \ Ldap-> __ construct()
/var/www/coasting/vendor/zendframework/zendframework/library/Zend/Authentication/Adapter/Ldap.php(205):Zend \ Authentication \ Adapter \ Ldap-> getLdap()
/var/www/coasting/vendor/zendframework/zendframework/library/Zend/Authentication/AuthenticationService.php(1010):Zend \ Authentication \ Adapter \ Ldap-> authenticate()
我该如何解决这个错误。如果有其他设置?
答案 0 :(得分:3)
安装PHP LDAP扩展。
您的PHP安装似乎缺少LDAP扩展。看看你的Phpinfo,你会发现没有" ldap"部分可用。因此,缺少LDAP连接的基本功能。因此错误。
如何安装扩展程序取决于使用的系统。它可能类似于" brew php-ldap"在Mac或" apt-get install php5-ldap"在debian或ubuntu linux上。在网上查看您最喜欢的搜索引擎,以查找有关该搜索引擎的更多信息。