PHP와 HTTP 캐싱 통합
페이지 콘텐츠가 기본적으로 정적으로 유지되지만 동적 템플릿으로 둘러싸인 상황에서는 HTTP 캐시 헤더를 활용하여 최적화할 수 있습니다. 페이지 전달. 다음은 PHP를 사용하여 효과적인 캐싱을 구현하기 위한 간단한 가이드입니다.
캐싱을 위한 필수 헤더
캐싱을 활성화하려면 다음 헤더 전송을 고려하세요.
조건부 요청 및 처리
if-modified-since 및 if-none-match:
캐시 유효성 확인
ETag를 생성할 때 체크섬 또는 사용자와 같은 요소의 조합 사용을 고려하세요. ID, 언어, 타임스탬프. 정적 콘텐츠를 오래 지속하려면 만료 시간을 더 길게 설정하세요.
구현 예시
<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 중국어 웹사이트의 기타 관련 기사를 참조하세요!