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?
Newerton
(Newerton Araujo)
May 11, 2012, 5:02pm
2
Eric,
Ta testado local ou no servidor?
Isso sempre acontece nos servidores da LOCAWEB que faz cache das páginas direto do servidor.
Thii
(Thiagosnider)
May 11, 2012, 6:21pm
3
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
Clayton23
(Cleintonto)
May 15, 2012, 10:14pm
6
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");
Newerton
(Newerton Araujo)
May 19, 2012, 1:16pm
9
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…
Newerton
(Newerton Araujo)
May 21, 2012, 2:25pm
11
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