2013-03-30 2 views
6

뒤로 버튼을 누르면 캐시를 지우는 데 문제가 있습니다.symfony2 응답 - 뒤로 버튼의 캐시 헤더 지우기

는 내 헤더 정보는 i'ts 캐시에서로드 말하고있다 : 내가 잘못 뭐하는 거지

$response = new Response; 
$response->expire(); 
$response->headers->addCacheControlDirective('must-revalidate', true); 
$response->headers->addCacheControlDirective('allow_reload', true); 

:

Status Code:200 OK (from cache) 

내 응답으로 설정되어 있습니까? 문서화 방법 중 아무 것도 작동하지 않는 것 같습니다 ...

답변

9

this article에서 조언을 받고 나열된 Cache-Control 지시문을 설정하면 서버에 대한 버튼 요청이 항상 전송됩니다.

$response->headers->addCacheControlDirective('no-cache', true); 
$response->headers->addCacheControlDirective('max-age', 0); 
$response->headers->addCacheControlDirective('must-revalidate', true); 
$response->headers->addCacheControlDirective('no-store', true); 
+0

대단원! Gatisl 대단히 감사합니다! 매력처럼 일했습니다! – rat4m3n

+0

이것은 생명의 은인입니다. FWIW, Symfony2의 HTTP 구성 요소를 사용하는 것은 물론 Silex와 잘 작동합니다. – neemzy