Chinaunix

标题: php中curl如何进行NTLM认证? [打印本页]

作者: liht1981    时间: 2010-01-05 14:18
标题: php中curl如何进行NTLM认证?
<?php
$url = "http://xxx/xxx/display.cgi";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLAUTH_NTLM);
curl_setopt($ch, CURLOPT_VERBOSE, TRUE);
curl_setopt($ch, CURLOPT_USERPWD, 'user:passwd');

$data = curl_exec($ch);
print $data;
curl_close($ch);
?>

代码如上,其中cgi使用perl写的,如果我直接运行 curl -o output -u user:passwd --ntlm $url,可以正确的取到网页,但是执行上面的php代码,却总是显示authtication failed,而且我用firefox抓了header,发现根本没有进行ntlm的认证,有人知道原因吗?

[ 本帖最后由 liht1981 于 2010-1-5 14:20 编辑 ]
作者: liht1981    时间: 2010-01-05 16:29
标题: 回复 #1 liht1981 的帖子
我又查了一下代码,发现curl_setopt($ch, CURLAUTH_NTLM);的返回值是false,难道是php不支持?php的版本是5.2.9
作者: renxiao2003    时间: 2010-01-24 17:16
是不是应该看看配置文件有没有打开这个功能。




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2