#1 jacksiu
首先,我不知道关于acl权限理解是否有误,我是这样做的:在index.php里面定义
'launch'=>array(
//路由前置过滤器
'router_prefilter'=>array(
array('spAcl','mincheck'),
)
),
然后再
'spAcl'=>array(
'prompt'=>array('user','is_admin')
),
我在user的model类里有一个方法:
function is_admin()
{
if($_SESSION['user_name']=='admin')
{
spClass('spAcl')->set('ADMIN');
header('location:'.spUrl('admin','admin'));
}
else
{
header('location:/tour/ban.html');
}
}
然后我需要控制权限的控制器叫admin,动作也叫admin。
然后在没有配置伪静态的时候,权限控制可行的,但是当添加了伪静态以后,
index.php?c=admin&a=admin 变成了admin-admin.html,问题就是这时候权限控制不起作用了,就是说没有去执行user类里的is_amdin方法,而直接去访问admin控制器中的admin动作了?
admin.php
class admin extends spController
{
function admin()
{
echo '管理员页面';
}
}
2011-07-17 16:08:09