作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
玩了几天,无法让 php 在 Oracle 的 DSEE 上绑定(bind)到 ldap。
function test(){
// LDAP variables
$ldaphost = "xxx.xxxxx.com";
$ldapport = 636;
$ldaprdn = 'cn=xyxyxyxy,ou=Accounts,dc=xxx,dc=xxxxx,dc=com';
$ldappass = 'vcvcvcvcvc';
ldap_set_option(NULL, LDAP_OPT_DEBUG_LEVEL, 7); // isn't helping
// Connecting to LDAP
$ldapconn = ldap_connect($ldaphost, $ldapport)
or die("Could not connect to $ldaphost");
if ($ldapconn) {
// binding to ldap server
$ldapbind = ldap_bind($ldapconn, $ldaprdn, $ldappass);
// verify binding
if ($ldapbind) {
echo "LDAP bind successful...";
} else {
echo "LDAP bind failed...";
}
}
}
最佳答案
start_tls()
和 ldaps
是互斥的,这意味着您不能发出 start_tls()
在 ssl 端口(标准 636)上,或启动 ldaps
在未加密的端口(标准 389)上。 start_tls()
命令在启动连接后在未加密端口上启动安全连接,因此您将在绑定(bind)发生之前发出此命令以使其加密。另一组常见端口是 3268(未加密)和 3269(ssl),可能在您的服务器中启用。ldap_set_option(NULL, LDAP_OPT_DEBUG_LEVEL, 7);
正在记录到您的 Web 服务器错误日志,具体取决于您的日志级别,或 stout(来自 PHP CLI)。要在此处获取更多信息,请检查您的 Web 服务器日志级别设置,或者只是从命令行运行您的 php 脚本。
要成功使用 ssl 端口,您需要指定 ldaps://
前缀,而在未加密的端口上这不是必需的(带有 ldap://
前缀)。
查看您的代码,这可能是协议(protocol)版本问题,因为 PHP 默认使用版本 2。要解决此问题,您可以发出:
ldap_set_option($conn, LDAP_OPT_PROTOCOL_VERSION,3);
ldap_set_option($conn, LDAP_OPT_REFERRALS,0);
telnet my.server.com 3268
putenv('LDAPTLS_REQCERT=never');
TLS_REQCERT never
关于PHP 无法连接到 LDAP Oracle Directory Server 企业版,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5888968/
我正在开发一个 voip 调用应用程序。我需要做的是在接到来电时将 Activity 带到前台。我在应用程序中使用 Twilio,并在收到推送消息时开始调用。 问题是我试图在接到任何电话时显示 Act
我是一名优秀的程序员,十分优秀!