日期:2014-05-17  浏览次数:20403 次

静态页面如何定义为受限制页面?
我在看身份验证时,书中提到了HTTP验证的概念,就是说如果用户要读取一个受保护的资源,那么服务器就会返回一个401,这样浏览器就会根据这个401来弹出一个登陆窗口。这个过程在PHP中很好模拟,比如这样:
 3 $username='snailhope';
 4 $password='123456789';
 5 //当刚登录到这个页面时由于这是USER和PW均未设置也要进行验证框的调用
 6 if(!isset($_SERVER['PHP_AUTH_USER'])||!isset($_SERVER['PHP_AUTH_PW'])
 7 ||$_SERVER['PHP_AUTH_USER']!=$username||$_SERVER['PHP_AUTH_PW']!=$password){
 8 //将该页面设置成无权限访问
 9 header('HTTP/1.1 401 Unauthorized');
10 //调用验证框进行登录验证
11 header('WWW-Authenticate: Basic realm="登录认证"');
12 exit('验证失败!!!');
13 }

我想请问的是,如果是一个静态页面,没有办法写code,那如何把一个页面定义为受保护的哪?

------解决方案--------------------
现在基本上没有什么地方使用你上面的这种验证方式了,体验不好 安全性不高...
如果需要控制某个页面 可以使用判断权限后include的方法. 或者读取页面内容输出.
页面可以放置到web目录外的地方.

保护当然是在服务器上做的.除非你在做cs的开发.