Авторизация завязана на DOCUMENT_ROOT

Допустим, приложение лежит здесь /home/www/build/001, юзер авторизовался и пользуется им.

Нужно выложить новый билд, соответственно, он будет уже тут /home/www/build/002

И все авторизации слетают. Как можно сделать, чтобы путь установки не учавствовал в формировании кукис, желательно не правя исходники фрэймворка?

Если я все правильно понял, то в конфиге добавь свойство у CWebUser





		'user'=>array(

			'class'=>'WebUser',

			// enable cookie-based authentication

			'allowAutoLogin'=>true,

	        	//'autoRenewCookie' => true,

	            	'identityCookie' => array('domain' => '.mysite.ru'),	

              )

Возможно еще вот этот топик будет полезным:

http://www.yiiframework.com/forum/index.php?/topic/12347-не-сохраняется-авторизация-пользователя/page__p__60411#entry60411

Домен тут не причем, он не меняется. Я говорю, что если вдруг изменится папка приложения, то происходит разлогинивание, потому что в кукис-хешах присутствует путь к приложению. Возможно ли это выключить?

откуда у вас этот кэш берется ?

Ну как откуда, из SecurityManager, yii шифрует куки и туда видимо подмешивает абсолютный путь к приложению, если его сменить, то перестают куки старые работать.

Что мешает расширить этот класс и переписать под себя ?

Интерференция всяких зависимостей :)

Но спасибо вам, кажется, я нашел решение без правки классов. Нужно задать в конфиге приложения путь basePath = /var/www/build, который будет симлинком на папку текущего билда (/var/www/001).

Если нужно выложить билд номер 002, то меняем место, куда ведет симлинк на /var/www/002, а для yii путь останется какой и был /var/www/build и куки не должны слететь.