Radosław
Zatoka
CTO / Symfony 2
developer
Temat: cache-control w symfony a zawartosc dostepna po zalogowaniu
Jakis czas temu rozpoczalem swoja przygode z Symfony i sytuacja, ktora zdziwila mnie zaraz po wykonaniu prostego modulu logowania.Mianowicie po wylogowaniu (
$this->clearCredentials();
$this->setAuthenticated(false);
//a nawet wyczyszczeniu calej sesji
$this->getAttributeHolder()->clear();
)
i kliknieciu przycisku wstecz przegladarki, serwowana jest z powrotem chroniona zawartosc z pamieci podrecznej przegladarki. Dopiero kolejne klikniecie wewnatrz strony, ktorej nie powinnismy juz widziec (!), wykonuje redirecta na panel logowania, ktory umieszczony jest w kodzie.
Podejrzewajac problem z cache-control, ustawilem w pliku view.yml
http_metas:
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
co wyeliminowalo problem, ale wstawilo mi w/w znacznik do kodu html
moje dwa pytania:
- czy wiecie moze co symfony kombinuje z tymi headersami (z podobnym problemem bez uzycia sf sie nie spotkalem, w logach debugToolbar nie widac tez zeby byly wysylane jakies dodatkowe headers)?
- jak mozna zapobiec temu w inny sposob (bez modyfikacji view.yml, a bardziej na poziomie kodu, zeby nie stosowac znacznika <meta http-equiv="Cache-Control" .../>) ?