我正在尝试在 Yii2 中进入管理页面之前获取登录页面。例如,当我在浏览器上写作时http://project/admin/
应该将我重定向到登录页面上http://project/admin/login
。请任何人帮助我。
在Module.php
public function behaviors(){
return [
'access' => [
'class' => yiifiltersAccessControl::className(),
'rules' => [
[
'allow' => true,
'roles' => ['@']
],
],
],
];
}
public function init()
{
parent::init();
Yii::$app->user->loginUrl = '/admin/main/login';
}
您只需要设置规则(在您的行为方法内部(,说明在记录用户时允许访问哪些操作。在您的情况下,可以在未记录用户时访问登录操作,如下所示:
public function behaviors()
{
return [
'access' => [
'class' => AccessControl::className(),
'rules' => [
[
'actions' => ['login'],
'allow' => true,
'roles' => ['?'],
],
[
'allow' => true,
'roles' => ['@'],
],
],
],
];
}