Q: PHP를 사용한 효과적인 캐싱에 필수적인 HTTP 헤더는 무엇입니까?
A: 웹사이트에 HTTP 캐싱을 구현할 때 특정 헤더는 캐시된 콘텐츠를 관리하는 방법을 브라우저에 안내하는 데 중요한 역할을 합니다. 필수 헤더에는 다음이 포함됩니다.
구현:
캐시 정책 설정:
<code class="php">session_cache_limiter('private_no_expire'); // Allow caching but do not reveal cache expiry time</code>
만료 설정:
<code class="php">header("Cache-Control: max-age=" . (60 * 60 * 24 * 30)); // Set cache expiration to 30 days</code>
If-Modified-Since 및 If-None-Match 헤더 관리:
이 헤더의 값을 Last-Modified 및 ETag 헤더와 비교하여 불필요한 재요청을 방지하세요.
<code class="php">$tsstring = gmdate('D, d M Y H:i:s ', $timestamp) . 'GMT'; $etag = $language . $timestamp; $if_modified_since = isset($_SERVER['HTTP_IF_MODIFIED_SINCE']) ? $_SERVER['HTTP_IF_MODIFIED_SINCE'] : false; $if_none_match = isset($_SERVER['HTTP_IF_NONE_MATCH']) ? $_SERVER['HTTP_IF_NONE_MATCH'] : false; if ((($if_none_match && $if_none_match == $etag) || (!$if_none_match)) && ($if_modified_since && $if_modified_since == $tsstring)) { header('HTTP/1.1 304 Not Modified'); exit(); } else { header("Last-Modified: $tsstring"); header("ETag: \"{$etag}\""); }</code>
위 내용은 PHP로 캐싱하기 위해 HTTP 헤더를 효과적으로 활용하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!