因此,如果我浏览http://www.example.com/user1.jpg,我会看到用户的照片。 但是,如果我从我的localhost网络服务器(通过相同的IP)通过PHP发出curl请求,则会抛出401未授权。 我甚至试图改变用户代理,但仍然没有成功。
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => 'http://example.com/user1.jpg',
CURLOPT_USERAGENT => 'Mozilla/5.0 (Windows NT 5.1; rv:31.0) Gecko/20100101 Firefox/31.0'
));
$resp = curl_exec($curl);
echo $resp;
curl_close($curl);
有什么不对?
答案 0 :(得分:0)
我使用Fiddler工具分析了查看3个GET请求的标题。前两个是401 Unauthorized,第三个是没有输入凭据(可能是SSON实现)被接受。 它使用的是NTLM身份验证协议,因此从CLI运行curl并使用“--ntlm username:password”为我完成了这项工作。