默认情况下,大多数web服务器一般被配置为匿名访问,也即为,用户在访问服务器上的信息时一般不会被要求提示标识信息。匿名访问意味着用户不使用用户名和密码登陆就可以访问网站。这也是绝大多数公共网站所使用的配置。 在Apache的配置文件“httpd.conf”中,默认被配置为匿名访问(如下): <div class="codetitle"><a style="CURSOR: pointer" data="61268" class="copybut" id="copybut61268" onclick="doCopy('code61268')"> 代码如下:<div class="codebody" id="code61268"> <directory "C:/program files/Apache software foundation/apache2.2/htdocs"> Options Indexes FollowSymLinks Includes AllowOverride None Order allow,deny Allow from all
-------------------------------------------------------------------------------- 要强制浏览器使用基本身份认证,必须传递一个WWW-Authenticate字段,例如下边的代码使用header()函数来要求客户端使用BASIC验证,它在HTTP消息报头中增加一个WWW-Authenticate字段:
<FONT style="COLOR: #ff0000">header("WWW-Authenticate:BASIC Realm=My Realm");
-------------------------------------------------------------------------------- 下边写一个使用 <div class="codetitle"><a style="CURSOR: pointer" data="52982" class="copybut" id="copybut52982" onclick="doCopy('code52982')"> 代码如下:<div class="codebody" id="code52982"> <?php if(!isset($_SERVER['PHP_AUTH_USER'])){ header("WWW-Authenticate:BASIC Realm=My Realm"); header("HTTP/1.0 401 Unauthorized"); echo("账号/密码错误!"); exit; }else{ /获取用户名,密码进行验证/ $user=$_SERVER['PHP_AUTH_USER']; $pwd=$_SERVER['PHP_AUTH_PW']; if($user=="admin"&&$pwd="password"){ echo "通过验证"; }else{ header("HTTP/1.0 401 Unauthorized"); echo "账号/密码错误!"; exit; } } ?>
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|