Yii2 - 错误请求(#400)|前端和后端cookie

时间:2017-03-08 13:05:50

标签: php cookies yii2 yii2-advanced-app

仅当我在同一frontend中打开backendbrowser时,才会出现此问题。

情境:

  

与后端互动 - >切换标签 - >与前端互动 - >   切换后退 - >与后端交互 - >不良请求(#400)

Cookie后端

'identityCookie' => [
                'name' => '_backendIdentity',
                'path'=>'/admin',
                'httpOnly' => true,
            ],

Cookie前端

'identityCookie' => [
                    'name' => '_frontendIdentity',
                    'path'=>'/', 
                    'httpOnly' => true,
                ],

会话后端

'session' => [
            'name' => 'session_backend'
        ],

会话前端

'session' => [
            'name' => 'session_frontend'
        ],

2 个答案:

答案 0 :(得分:1)

CSRFfrontend的{​​{1}}问题不同,因此当存储同一应用程序的backend的浏览器有2个不同的{{1}时然后其中一个应用程序将获得session

答案 1 :(得分:1)

感谢@indra shastri

对于那些面临同样问题的人:

添加以下内容解决了我的问题。

后端config / main.php

'request' => [
                'cookieValidationKey' => '[DIFFERENT UNIQUE KEY]',
                'csrfParam' => '_backendCSRF',
            ],

前端config / main.php

'request' => [
            'cookieValidationKey' => '[RANDOM KEY HERE]',
            'csrfParam' => '_frontendCSRF',
        ],