2012-10-17 2 views
0

캐싱 할 이미지가 많은 웹 페이지가 있습니다. 그 목적을 위해 필요한 이미지 경로를 나열하는 PHP 스크립트가 있습니다. 최종 문서는 다음과 같습니다캐시 매니페스트가 포함 된 파일은 자동으로 포함됩니다.

CACHE MANIFEST 

NETWORK: 
* 

CACHE: 
uploads/categoriasactuaciones/1.png 
uploads/categoriasactuaciones/10.png 
[...] 
uploads/riesgos/5.png 
uploads/riesgos/6.png 

문제는 <html> 태그 매니페스트가있는 페이지가 자동으로 캐시됩니다 있다는 것입니다 및 로그인 논리가있는 곳이있다. 이를 사용 중지하는 방법이 있습니까? 내가 여기서 뭔가 잘못하고있는거야?

답변

0

페이지를 가져올 때마다 임의의 매개 변수를 쿼리 문자열에 추가하여 브라우저가 항상 다른 페이지라고 생각하도록 속일 수 있습니다. 예를 들어

:

<a href="page.html?r=<?= /* your random string here */ ?>">Link here</a> 

브라우저가 캐시 된 페이지를 사용하지 않는 대신 새로운 요청을 발행합니다 이쪽으로.

캐시하지 않으려는 페이지가 색인 페이지 인 경우이 기능이 작동하지 않을 수 있습니다. 당신이 사용하는 경우, 또한

<?php 
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1 
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past 
?> 

:하지만 당신은 대신 (이 프로그래밍 언어에, 물론, 따라 다름)) (예 : PHP의 헤더 등의 기능을 사용하여 응답 헤더에서 캐시 제어 PARAM을 설정할 수 있습니다 프레임 워크를 사용하면 프레임 워크의 캐싱 구성을 활용할 수도 있습니다.

(출처 : http://php.net/manual/en/function.header.php)

+0

내가 가져 오는 오전 페이지 CodeIgniter를 통해로드 인덱스, 그래서이 작동하지 않습니다. – manutenfruits

+0

@manutenfruits 나는 내 대답을 적절하게 편집했다. – cafonso

관련 문제