仅使用密码的PHP标头身份验证

仅使用密码的PHP标头身份验证,php,authentication,passwords,prompt,Php,Authentication,Passwords,Prompt,我发现了以下代码 <?php $_SERVER['PHP_AUTH_USER'] = 'Me'; if (empty($_SERVER['PHP_AUTH_PW'])) { header('WWW-Authenticate: Basic realm="My Realm"'); header('HTTP/1.0 401 Unauthorized'); echo 'Text to send if user hits Cancel button'; exit;

我发现了以下代码

<?php
$_SERVER['PHP_AUTH_USER'] = 'Me';

if (empty($_SERVER['PHP_AUTH_PW'])) {
    header('WWW-Authenticate: Basic realm="My Realm"');
    header('HTTP/1.0 401 Unauthorized');
    echo 'Text to send if user hits Cancel button';
    exit;
} else {
    echo "<p>Hello {$_SERVER['PHP_AUTH_USER']}.</p>";
    echo "<p>You entered {$_SERVER['PHP_AUTH_PW']} as your password.</p>";
}
?>

中指定了HTTP基本身份验证。我在那里没有找到任何关于默认用户名的信息。这就是为什么我会说,这是不可能的设置由服务器。但是,如果您曾经登录,某些浏览器可能会缓存用户名和密码

这永远不会发生,因为HTTP从定义上讲是无状态协议

但是,您可以在请求URI中包含凭据:

https://username:password@www.example.com/path