当打开浏览器访问网页时,浏览器弹出一个包含用户名、密码输出项的对话框,当用户输入用户名、密码后发送给服务器,服务器验证通过后,会显示相应的信息。这一认证的过程,就是http基本认证。
1、客户端发送request给服务器;
2、因为request中没有包含Authorzation header,服务器会返回一个401错误给客户端;
3、客户端把用户名和密码经过base64编码后发给服务端认证;
4、服务端将Authorzation header中的内容取出验证,如果验证通过,则根据需求发送资源给客户端;
<?php
function validate($user="", $pass="") {
if($user=="admin"&&$pass=="admin") {
return true;
} else {
return false;
}
}
if(!validate($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW'])) {
http_response_code(401);
header("Content-type: text/html; charset=utf-8");
header('WWW-Authenticate:Basic realm="My website"');
echo '需要用户名和密码才能继续访问';
exit;
} else {
echo '欢迎';
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)