我是Yii的新手。我在验证不同位置时遇到问题。我有一个需要管理员和用户身份验证的应用程序。虽然管理员使用谷歌身份验证,用户使用事实上的用户名/密码组合。Yii认证
以下是我的代码。我错过了什么。基本上,我想当用户输入/管理她/她应该得到管理登录 - 我已经排序,当他/她键入/帐户/登录用户应该得到正规的用户名/密码登录。
public function beforeAction($action)
{
$host = $_SERVER ['REQUEST_URI'];
if (!isset(Yii::app()->session['user_type']))
{
if ($host != '/account/login' && $host != '/admin')
{
//header('Location: /access');
header('Location: /account/login');
}
/*else if ($host != '/admin')
{
header('Location: /admin');
}*/
}
else
{
$access = $this->access();
$currentCont = ucfirst($this->getUniqueId());
if (!empty($access))
{
if (!in_array($currentCont, $access))
{
Yii::app()->session->clear();
Yii::app()->session->destroy();
header('Location: /account/login');
}
}
return parent::beforeAction($action);
}
return parent::beforeAction($action);
}
那么是什么问题? –
嗨Mihai,打字/管理应该留在那里不要重定向到/帐户/登录这是一般用户登录和/管理员有登录管理..谢谢。 – Cyberomin
这可能对你有所帮助:https://www.cloudways.com/blog/user-authentication-yii2/ –