작업을 하다보면 같은페이지에 같은 파일명으로 된 이미지를 수정해야될일이 발생하곤 합니다.
그러나 파일명이같고 용량도 비슷해서 웹브라우져는 캐쉬기능을 사용하여 바뀐파일이 보여지지 않고 바뀌기 전의 그림파일이 보여지는 문제가 발생하곤 합니다.
이러한 문제의 해결방법은 여러가지가 있을수 있지만..
HTML 의 방법은 절대 안되는것 같습니다.. 적용이 안되요..
HTML 방법으론 아래와 같은 방법을 사용하곤 하지요..

<meta http-equiv="Cache-Control" content="no-cache">
<meta http-equiv="Pragma" content="no-cache">

하지만 안됩니다.. 안된다는 사람도 많고 저도 안되더군요..
자바스크립트의 아래와 같은 방법도 있지만 이미지캐쉬기능을 막기에는 역부족입니다.

location.replace(주소);

PHP를 이용한 아래와 같은 꽁수(?)를 사용하여 처리가 가능합니다.
해당 페이지 이동할때 아래처럼 하는 방법
<script language="javascript">
var url = "주소?<?=time();?>";
location.replace(url);
</script>
위처럼 하면 보여지는 페이지는 같지만 주소가 달라서 캐쉬기능을 피할수가 있습니다.

또하나의 비슷한 방법입니다.
<img src="주소?<?=time();?>" width="100" height="100">
위의 이미지를 보여주는 페이지는 아래처럼 들어오십시오

location.replace(주소);

이처럼 하면 보여지는 이미지는 같지만 주소가 달라서 캐쉬기능을 피할수가 있습니다.
원리를 아셨으니 응용은 자유롭게 하십시오..

그냥 자바스크립트 만으로 처리가 가능할것 같지만..
PHP 로 하는게 좀더 간편하고 쉬울듯 하네요.. ^^;
반응형
,