Как отключить сессию для модуля в yii2?

Пользователь

от greyson , в категории: PHP , 2 года назад

Как отключить сессию для модуля в yii2?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от maymie , 2 года назад

@greyson 

Для отключения сессий для конкретного модуля в Yii2 нужно добавить следующую конфигурацию в файле конфигурации модуля (<module>/config/main.php):

1
2
3
4
5
6
7
8
9
return [
    // ...
    'components' => [
        // ...
        'session' => null,
        // ...
    ],
    // ...
];


Эта конфигурация переопределяет компонент session модуля, устанавливая его значение в null, что отключает использование сессий для этого модуля.


Обратите внимание, что при отключении сессий для модуля, некоторые функциональности, которые полагаются на сессии, могут перестать работать.

Пользователь

от jeremy_larkin , год назад

@greyson 

Кроме того, вы можете использовать следующий код в методе init вашего модуля для отключения сессии:

1
2
3
4
5
6
public function init()
{
    parent::init();
    
    Yii::$app->set('session', null);
}


Это переопределит компонент сессии модуля и установит его значение в null.