 |
|
|  |
|
 |
19년 전 |
자바스크립트코드를 캐쉬에 저장안하는 방법입니다.
소스 공개하면 금방풀리겠지만 ^^;; 짤막한 팁을 공개합니다.ㅡ.ㅡ
<?php
session_cache_limiter('none');
$host = 'http://' . getenv('HTTP_HOST');
if ($host != substr(getenv('HTTP_REFERER'), 0, strlen($host))){
header("HTTP/1.0 404 Not Found");
}
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
?>
js 코드를 PHP로 생성후 =>aaa.js.php 정도가 되겠져
상단에 위 코드를 입력하시면 js가 캐쉬가 되지 않습니다.
넷스에서는 안됩니다. 익스만 접속가능하게 하신후 사용하셔야 할듯...
테스트는 익스 5.0 이상에서 했는데 함 테스트 해보시기 바랍니다.
(특정부라우져에 국한될수도 있음,브라우져 설정에 따라 달라질지도 모름)
리페어는 뚤리겠지만 나름대로 코드를 추가하면 좀더 힘들것입니다.
다시 말하지만여 자스숨기기가 아니라 캐쉬파일 생성 안하기입니다. ㅡ.ㅡ
사용예)
test.js.php 파일을 생성합니다(파일명은 php확장자이면 되니다.js는 자바스크립트라는뜻으로 넣어둔것입니다.)
==============================파일시작
<?php
위의 소스
?>
// 여기에 자바스크립트 입력
alert('test');
================================파일끝
부모파일 : test.php
자바스크립트 불러올 파일안의 내용
<script src=test.js.php></script>
이상입니다. ^^;;
===============================
테스트 : 브라우져에서 test.php를 불러본다.
인터넷 템프폴더를 확인하여 test.js.php 파일이 없어야 합니다.
자바스크립트 파일만 된는것은 아닙니다.
그냥 일반 php 파일도 캐싱 안됩니다. 리페어첵은 자스직접접근을 막은 부분이고여
이미지파일을 위 소스하단에서 file_get_contents('이미지') 이런식으로 뿌려주어도 캐쉬가 안됩니다.
그냥 클라이언트에 캐쉬를 남기지 않는 기능임니다. 나머지는 응용하시길 ^^;;
음..
제목을 바꾸어야 하나여 ^^;; 뭘루바꾸나 ㅡ.ㅡ
익스 6.0과 5.0에서 테스트 되었습니다.
|
|
추천 : 505 |
추천
목록
|
|
|  |
|