2009-06-24 2 views

답변

13

모두가 새 파일을 다시로드하도록하는 가장 확실한 방법은 URL을 변경하는 것입니다. 합리적인 방법은 실제로는 임의의 문자열에 압정하는 이름을 변경하지 않고이 작업을 수행하려면 :

너트를 해독하기 위해 쇠망 치를 사용하고이 작업을 수행 할 수있는 모든 HTTP 메커니즘을 우회하는 것
<link rel='stylesheet' href='/mystyles.css?random=87365835'> 

하지만, 그것은 절대적으로 의지 어디서나 작동하지만 다른 기술에는 모두주의 사항이 있습니다.

편집 : @ 지터 : 모든 요청에 ​​대해 자동으로 URL을 변경할 필요가 없습니다. CSS 파일의 타임 스탬프를 기반으로 할 수도 있고, 수동으로 변경할 수도 있습니다. CSS가 다시로드됩니다. http://developer.yahoo.com/performance/rules.html#etags

를하지만 바람직한 방법은 사용자가 항상 최신을 수 있도록, 같은 날짜 또는 빌드 번호와 마찬가지로, CSS 파일의 이름을 바꾸려면 아마 :

+0

이 방법은 일반적인 방법입니다. http://stackoverflow.com/questions/438821/what-does-do-in-a-css-link –

+0

도 참조하십시오.하지만 이제는 클라이언트가로드되는 것처럼 서버에 많은 부하가 걸립니다 CSS는 매번? random = xxx가 항상 다른 때입니다. 브라우저는 변수가있는 URL을 캐싱하지 않기 때문에 (IE와 FF가 있지만) – jitter

+0

잘 작동하지 않아야합니다. 브라우저는 URL을 이해하므로? asdasd = adssad 부분을 캐시해서는 안됩니다. – jitter

2

당신은 서버 ETag를 편집을 시도 할 수 있습니다.

관련 문제