2010-07-26 127 views

回答

2

10.4.2 401未经授权

请求需要用户认证 。响应必须包含WWW认证报头 字段(第14.47节),其中包含适用于请求的 资源的 询问。客户端可以用合适的授权 头字段重复 请求(14.8节)。如果 请求已包含授权 凭证,则401响应 指示授权已被拒绝这些凭证的 。如果 401响应包含相同 挑战,因为前一响应,并 用户代理已经尝试 认证至少一次,那么 用户应提交这是在响应中给出的实体 ,因为 该实体可能包含相关的 诊断信息。 HTTP访问 认证在“HTTP 认证:基本和摘要 访问认证”[43]中进行了说明。

Status Code Definitions

10

如果网站需要基本身份验证,你可以给你的凭据是这样的:通过读取头手动

fopen("http://user:[email protected]/path/to/resource", "r"); 

如果使用摘要身份验证,你必须处理它失败的响应,并发送一个新的正确的标题。请参阅HTTP context options了解如何阅读和设置标题,并了解HTTP authentication with PHP中的摘要是如何工作的。您可以使用cURL extensionHTTP PECL extension

1

任务 - 打开基本的HTTP身份验证。

$auth_header = 'Authorization: Basic '.base64_encode("$user:$password"); 

$f = fopen($url, $open_mode,false, stream_context_create(
    'http'=>array(
     'header' => array($auth_header,$some_other_header,$some_yet_header), 
    ), 
)); 
相关问题