Hybridauth и сессия в кэше

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
maxtor
Сообщения: 78
Зарегистрирован: 2011.12.06, 11:04

Hybridauth и сессия в кэше

Сообщение maxtor »

Храню сессию в кэше:

Код: Выделить всё

 'cache'=>array(
            'class'=>'system.caching.CApcCache',            
        ),
Но в таком случае, Hybridauth не хочет авторизовываться... Кто нибудь сталкивался с такой проблемой?
Stas
Сообщения: 441
Зарегистрирован: 2011.11.29, 16:00

Re: Hybridauth и сессия в кэше

Сообщение Stas »

возможно кушу не хватает места и сессия перитерается
maxtor
Сообщения: 78
Зарегистрирован: 2011.12.06, 11:04

Re: Hybridauth и сессия в кэше

Сообщение maxtor »

Stas писал(а):возможно кушу не хватает места и сессия перитерается
Нет, занято только 30%
Да и авторизация на сайте нормально работает..
maxtor
Сообщения: 78
Зарегистрирован: 2011.12.06, 11:04

Re: Hybridauth и сессия в кэше

Сообщение maxtor »

В DefaultController->_loginUser
изменил: Yii::app()->user->login($identity, 0);
на: Yii::app()->user->login($identity, 3600*24*30);
авторизация пошла, но в сессию не записываются дополнительные параметры:

Код: Выделить всё

private function _loginUser($identity) {
		$user = User::model()->findByPk($identity->id);		
		Yii::app()->user->setState('username', $user->username);
		Yii::app()->user->setState('email', $user->email);
		Yii::app()->user->setState('avatar', $user->getAvatarUrl($user->id, $user->avatar, 's'));
		
		Yii::app()->user->login($identity, 3600*24*30);
		$this->redirect(Yii::app()->user->returnUrl);
	}
При стандартной авторизации все параметры успешно записываются в сессию. Есть какие-нибудь догадки?
maxtor
Сообщения: 78
Зарегистрирован: 2011.12.06, 11:04

Re: Hybridauth и сессия в кэше

Сообщение maxtor »

Такое ощущение, что в данном модуле, вся сессия по прежнему записывается в файлы. Как заставить писать в кэш?
maxtor
Сообщения: 78
Зарегистрирован: 2011.12.06, 11:04

Re: Hybridauth и сессия в кэше

Сообщение maxtor »

Даю ответ!
Нужно везде в модуле заменить session_start() на Yii::app()->session->open()
Ответить