2012-09-18 7 views
2

나는 먼 미래를 설정하고 싶습니다. 각 브라우저의 요청을 줄이기 위해 헤더를 만료시킵니다.Cache-Control s-maxage 헤더가 브라우저 캐시의 Expires 헤더를 덮어 씁니까?

Cache-Control : s-maxage = 600을 설정하여 프록시 캐시 (및 CDN)가 10 분마다 새로운 콘텐츠에 대해 유효성을 재확인하도록하십시오.

브라우저는 캐시 제어 헤더 (s- maxage 지시어로 대체 됨)의 존재에도 불구하고 Expires 헤더를 존중합니까?

+1

모습이 답변 http://stackoverflow.com/questions/3740952/difference-between-three-htaccess-expire-rules/3746325#3746325 – secondflying

+0

대답은 S-있는 maxage를 언급하지 않는 . –

+1

HTTP 사양을 볼 수 있습니다. "s-maxage 지시문은 항상 개인 캐시에 의해 무시됩니다." http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.3 – secondflying

답변

-1

둘 다 포함되어 있으면 둘 다 검사되며 둘 다 우선합니다. 최대 연령은 만료되지 않고 추가됩니다.

+0

그게 잘못입니다. 캐시 제어가 만료를 대체합니다. –

+0

그것은 잘못이 아니에요, 스스로 테스트하십시오. 캐시 제어가 새롭고 더 많은 옵션을 갖지만 Expires를 대체하지 않으며 두 옵션 모두 검사됩니다. –

+0

값이 충돌하면 어떻게됩니까? 브라우저는 하나를 선택해야하며 그 중 하나는 캐시 제어입니다. –

0

응답에 Expires 및 Cache-Control max-age 지시문이 모두 포함되는 경우 Expires 헤더가 더 제한적인 경우에도 Max-Age가 Expires 헤더보다 우선합니다. 이 규칙은 원 서버가 주어진 응답에 대해 HTTP/1.0 캐시보다 HTTP/1.1 캐시에 더 긴 만료 시간을 제공 할 수있게합니다.

출처 : http://condor.depaul.edu/dmumaugh/readings/handouts/SE435/HTTP/node24.html