Я пытаюсь создать продвинутый проект Yii2. Для этого я использовал продвинутый шаблон приложения kartik-v. Он отлично работает, но (как только он упомянул here), если вы войдете в интерфейс, а затем перейдите на бэкэнд, вы также войдете в систему. Поэтому я хотел бы разделить интерфейсные и бэкэнд-логины (разные сеансы). Я попытался настроить файлы cookie, но это не сработало.
В комментариях я нашел это: «Тем не менее, когда либо входной интерфейс, либо бэкэнд подписывается, и мы открываем другое, оно автоматически подписывается, потому что cookie сеанса тот же, PHPSESSID». Таким образом, я изменил имя и savePath сеансов в конфигурации frontend и backend. С этим он должен работать, но это не так.
Я получаю 500 внутренних ошибок сервера каждый раз, когда я иду на свою страницу. И если я попытаюсь войти в систему, он просто не работает, он перенаправляет меня, но не регистрирует меня. Я узнал, что если я не установлю savePath, я не получу ошибку, но все равно ничего не произойдет. И если проверить параметр «запомнить меня», я получаю сообщение об ошибке, но логин работает. Поэтому я не знаю, что делать сейчас. Мои основные конфигурационные файлы:Yii2 Расширенное приложение, различные сеансы для внешнего интерфейса и бэкенда
бэкенд:
'components' => [
'session' => [
'name' => 'backend_sessid',
'savePath' => __DIR__ . '/../tmp',
],
'user' => [
'identityClass' => 'common\models\User',
'enableAutoLogin' => true,
'identityCookie' => [
'name' => '_backendUser',
'path' => '/projectname/backend/web'
]
],
интерфейс:
'components' => [
'session' => [
'name' => 'frontend_sessid',
'savePath' => __DIR__ . '/../tmp',
],
'user' => [
'identityClass' => 'common\models\User',
'enableAutoLogin' => true,
'identityCookie' => [
'name' => '_frontendUser',
'path' => '/projectname'
]
],