Куда, млять лучше
Более менее - есть, но платные.
'on beforeAction' => function($event){ //цепляемся за событие перед запуском экшена
Yii::$app->controller->attachBehavior('',[ //цепляем к текущему контролеру поведение
'class' => \yii\filters\AccessControl::className(), //указываем класс поведения
'except' => ['login','error'], //исключим из правила экшены login и error, так как они должны быть доступны всем
'rules' => [
[
'allow' => true, //разрешаем доступ
'roles' => ['@'], //только зарегистрированным пользователям или замените на 'admin', что бы только админам позволить
],
],
]);
},
дело в том, что если он не получил ответ на свой ajax запрос в течении 1000ms то кидает обычный get. Это самая частая проблема.