Я использую плагины «CakeDC / Users» на новой установке Cakephp.
У меня есть два контроллера: PagesController.php, CardsController.php.
У страниц есть 1 действие (бета-версия, это домашняя страница), а у карт два действия (индексное и одиночное).
Вот настройка в начальной загрузке:
Configure::write('Users.config', ['users']);
Plugin::load('CakeDC/Users', ['routes' => true, 'bootstrap' => true]);
И конфигурация плагина в config / users.php:
return [
'Users' => [
'Email' => [
'validate' => false
]
],
'Auth' => [
'loginAction' => [
'plugin' => null,
'controller' => 'Members',
'action' => 'login',
'prefix' => null
],
'logoutAction' => [
'plugin' => null,
'controller' => 'Members',
'action' => 'logout',
'prefix' => null
],
'authenticate' => [
'all' => [
'finder' => 'auth',
],
'CakeDC/Users.ApiKey',
'CakeDC/Users.RememberMe',
'Form',
],
'authorize' => [
//'CakeDC/Users.Superuser',
//'CakeDC/Users.SimpleRbac',
],
],
];
У меня настроен только один маршрут:
$routes->connect('/', ['controller' => 'Pages', 'action' => 'Beta', 'home']);
И вот мой AppController.php:
public function initialize()
{
parent::initialize();
$this->loadComponent('Flash');
$this->loadComponent('CakeDC/Users.UsersAuth');
}
Домашняя страница разрешена:
$this->Auth->allow('beta');
Когда я не вошел в систему, я могу получить доступ только к / pages / beta, что нормально. Я могу зарегистрироваться, войти и выйти с плагином, никаких проблем на этой стороне.
После того как я вошел в систему, я не могу получить доступ к другим страницам, кроме домашней страницы.
Если я попал в / cards / index или / cards / single, я всегда перенаправляю на домашнюю страницу. Если я отключил плагин, доступ к страницам в порядке.
Я застрял на этом с тех пор, какая-то помощь?
Спасибо,
С уважением
Неважно, я заменил:
'authorize' => [
//'CakeDC/Users.Superuser',
//'CakeDC/Users.SimpleRbac',
],
От :
'authorize' => false,
Плагин использовал авторизацию с компонентом по умолчанию, поэтому, если вы не собираетесь его использовать, у вас есть набор «ложь», чтобы убедиться, что у вас нет проблем. Или вы должны настроить авторизованные контроллеры и действия, настроив правильную настройку.
Спасибо,
Других решений пока нет …