HTTP 内置基础验证。浏览器收到401状态码响应后,弹出要求输入信息的对话框。通过验证则显示内容,不通过不显示需要验证身份的内容。
1;手动HTTP基础验证:
header('http/1.1 401 Unauthorized')
此在响应头中添加401状态码。触发浏览器弹出对话框要求输入用户名&密码
想要去掉已认证的状态,重新触发下401的状态。
<?php
//检查有无认证信息
// HTTP_AUTHORIZATION 值如 'Basic dXNlcjpwYXNz'
if((!isset($_SERVER['PHP_AUTH_USER'])) && (!isset($_SERVER['PHP_AUTH_PW'])) && (substr($_SERVER["HTTP_AUTHORIZATION"],0,6) == 'Basic')){
list($_SERVER['PHP_AUTH_USER'],$_SERVER['PHP_AUTH_PW']) = explode(":",base64_decode(substr($_SERVER['HTTP_AUTHORIZATION'],6)));
}
//没有认证信息
if(($_SERVER['PHP_AUTH_USER'] != 'user') ||
($_SERVER['PHP_AUTH_PW'] != 'pass')){
header("WWW-Authenticate: Basic r