Firefox mantém session?

Fala galera. Seguinte:

quando passo pelo LoginForm.php, eu armazeno no Yii::app()->user meu id do usuário, e logo depois carrego o menu no HTML (sem armazenar esse menu em qualquer lugar).

Se eu acessar uma conta que tenha vários menus, e sair (meu método logout):




Yii::app()->user->logout();

$this->redirect(Yii::app()->homeUrl);



depois disso se eu logar com outro usuário com menos privilégios, acontece duas situações:

no firefox ele carrega o menu do primeiro usuário logado

no chrome fica normal, carrega o menu do segundo usuário!

alguém sabe o porque? se é bug?

Eric,

Ta testado local ou no servidor?

Isso sempre acontece nos servidores da LOCAWEB que faz cache das páginas direto do servidor.

Tava com esse problema, porque o servidor usa o Varnish, um aplicativo que faz cache das aplicações, ele nota que é a requisição é a mesma e devolve o conteúdo em cache (ele não entende que existe uma session).

Verifica isso, se isso tiver acontecendo rodando localmente, ai é bom verificar os códigos.

Fala pessoal, Obrigado!

O serve é interno, ainda não instalei o varnish, até pq se fosse varnish iria acontecer tanto no chrome qt no IE tb né?

programas instalados:

nginx 1.1.6

PHP 5.3.8

alguém? =(

Coloque esse código na sua funçao de logout:


Yii::app()->user->clearStates();

obrigado cara, mas continua sem funcionar!

galera consegui resolver…depois de logar fiz isso:




            header("Cache-Control: no-cache");

            header("Pragma: no-cache");



Eric,

Verificou se o nginx não estava segurando o cache por 1 minuto?

Newerton, mas se isso acontecer…teria que ser em todos os browsers…não?




fastcgi_cache_valid			any 		1m;



seria essa linha né? realmente está ativada…

Isso é verdade! Tento desativar para testar?

Se não funciona, tenta desativar o nginx ai faz o teste com ele ativado e desativado.

Antes eu usava o APC, e não tinha este problema, mais não adianto eu usar o APC o servidor do cliente não tinha o APC ativo hehehe