我在 Yii 中收到太多重定向错误。
我使用的是 Yii 提供的默认 accessControl 过滤器。
整个应用程序在我使用 WAMP 的本地主机上完美运行。在我上传到登台服务器后,问题开始出现。
据我所知,我已经配置了 .htaccess 文件
Options +FollowSymLinks
IndexIgnore */*
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.*$ /index.php [L]
</IfModule>
如果我尝试打开不需要登录的任何操作,它会毫无故障地打开
public function accessRules()
{
return array(
array('allow', // allow all users to perform 'index' and 'view' actions
'actions' => array('index', 'locationImport', 'contact'),
'users' => array('*'),
),
array('allow', // allow authenticated user to perform 'create' and 'update' actions
'actions' => array('LocationImport'),
'users' => array('@'),
),
array('allow', // allow admin user to perform 'admin' and 'delete' actions
'actions' => array('admin', 'delete'),
'users' => array('admin'),
),
array('deny', // deny all users
'users' => array('*'),
),
);
}
在上述控制器中,联系人正在工作。
我的 main.php 相关
'user' => array(
// enable cookie-based authentication
'allowAutoLogin' => true,
'loginUrl' => array('/useraccount/login'),
'class' => 'CPWebUser',
),
UserAccountController 中的访问规则
public function accessRules()
{
return array(
array('allow', // allow all users to perform 'register' and 'login' actions
'actions' => array('register', 'login', 'view', 'xxxx', 'xxxx',),
'users' => array('*'),
),
array('allow', // allow authenticated user to perform 'create' and 'update' actions
'actions' => array('update', 'logout', 'home', 'changePassword'),
'users' => array('@'),
)
array('deny', // deny all users
'users' => array('*'),
),
);
}
只是总结一下。完全适用于本地主机。站点控制器 Actioncontact 有效。userAccountController 中的任何操作都不起作用。甚至没有注册,它重定向到登录。actionLogin 打不开。