| 基于HTTP验证当PHP以CGI模式运行时不能实现。我们可以使用函数header()发送HTTP标头强制验证,客户端浏览器则弹出供输入用户名和密码的对话框。这两个变量被储存在$PHP_AUTH_USER和$PHP_AUTH_PW中,你可以使用这两个变量验证合法并允许进入。以下的例子通过用户名称/密码对为tnc/nature的验证一名用户的登录: 
<? 
 if(!isset($PHP_AUTH_USER)) 
 { 
 Header("WWW-Authenticate: Basic realm="My Realm""); 
 Header("HTTP/1.0 401 Unauthorized"); 
 echo "Text to send if user hits Cancel buttonn"; 
 exit; 
 } 
 else 
 { 
 if ( !($PHP_AUTH_USER=="tnc" && $PHP_AUTH_PW=="nature") ) 
 { 
 // 如果是错误的用户名称/密码对,强制再验证 
 Header("WWW-Authenticate: Basic realm="My Realm""); 
 Header("HTTP/1.0 401 Unauthorized"); 
 echo "ERROR : $PHP_AUTH_USER/$PHP_AUTH_PW is invalid."; 
 exit; 
 } 
 else 
 { 
 echo "Welcome tnc!"; 
 } 
 ?>  
 
 (非常全面的一个php技术网站,  有相当丰富的文章和源代码.) 事实上再实际引用中不大可能如上面使用代码段明显的用户名称/密码对,而是利用数据库或者加密的密码文件存取它们。	        
 |