2014-09-26 80 views
0

在yii2高級模板中。當用戶登錄來自前端時,Yii2登錄允許訪問後端

如果我這樣做下面我得到後端沒有登錄訪問,即使是前端兩個不同的數據庫配置和前端登錄頁面後端

  1. 登錄。
  2. 成功登錄到前端後。
  3. 當我打開後端鏈接時,它顯示已登錄。
  4. 後端不需要登錄。
  5. Visa - 如果我做相反的話。

如何限制?

+0

去佈局main.php在後端目錄則u知道爲什麼出現這種情況! – sprytechies 2014-09-26 12:31:11

+0

任何與會話在這裏? – 2014-09-28 17:13:27

回答

2

您必須在config/main.php文件中爲前端和後端設置不同的cookie。 對於EG:

在後端:

'components' => [ 
     'session' => [ 
      'name' => 'BACKENDID', //Set name 
      'savePath' => __DIR__ . '/../tmp', //create tmp folder and set path 
     ], 
    ], 

在前端:

'components' => [ 
     'session' => [ 
      'name' => 'FRONTENDID', 
      'savePath' => __DIR__ . '/../tmp', 
     ], 
    ], 

就是這樣。

+0

tmp文件夾中應該有什麼?我有與上面給出的相同的問題..試了這個答案,但不能理解什麼是在tmp文件夾?我剛剛創建了一個emty文件夾並運行代碼出錯...無效參數 - yii \ base \ InvalidParamException 會話保存路徑不是有效的目錄:C:\ xampp \ htdocs \ yii2-my-app \ frontend \ config/tmp目錄 – Goli 2017-11-14 12:22:45

0

後端/配置/ main.php

'components' => [ 
    'session' => [ 
     'name' => 'PHPBACKSESSID', 
     'savePath' => __DIR__ . '/../tmp', 
    ], 
    'user' => [ 
     'identityClass' => 'common\models\User', 
     'enableAutoLogin' => true, 
     'identityCookie' => [ 
     'name' => '_backendUser', // unique for backend 
     'path'=>'/yii-project/backend/web' // correct path for the backend app. 
    ], 

前端/配置/ main.php

'components' => [ 
     'session' => [ 
     'name' => 'PHPFRONTSESSID', 
     'savePath' => __DIR__ . '/../tmp', 
    ], 
    'user' => [ 
     'identityClass' => 'common\models\User', 
     'enableAutoLogin' => true, 
     'identityCookie' => [ 
     'name' => '_frontendUser', // unique for backend 
     'path'=>'/yii-project/frontend/web' // correct path for the backend app. 
    ],