に権限のないユーザーをリダイレクトする私は、ログインのために、このコントローラのコードがあります。別のコントローラのアクション
public function actionLogin()
{
if (!\Yii::$app->user->isGuest) {
return $this->redirect(Yii::$app->request->baseUrl.'/telephone/index');
}
$model = new LoginForm();
if ($model->load(Yii::$app->request->post()) && $model->login()) {
return $this->redirect(Yii::$app->request->baseUrl.'/telephone/index');
}
return $this->render('login', [
'model' => $model,
]);
}
と私は使用権限のないユーザーのためのadd
とdelete
作用を防止するために:
public function behaviors()
{
return [
'access' => [
'class' => AccessControl::className(),
'only' => ['add','delete'],
'rules' => [
// allow authenticated users
[
'allow' => true,
'roles' => ['@'],
],
// everything else is denied by default
],
],
];
}
しかし、権限のないユーザーの場合を追加または削除すると、site/login
にリダイレクトされます。コントローラとアクションをどのように変更できますか?
それが機能していないいずれかの方法。まだサイト/ログインにリダイレクト – micky
また、他の答えを考慮に入れて、sitecontrollerのアクセスルールも設定しましたか? – ttdijkstra
または無効なルートかもしれません。設定で 'loginUrl'プロパティを' null'に設定してみてください。これはdenycallbackアクセス時に '403 exception'を与えるはずです。 – ttdijkstra