Heim > Artikel > Backend-Entwicklung > Wie kann ich HTTP-Caching mit PHP effektiv für dynamische Websites mit statischen Inhalten implementieren?
HTTP-Caching mit PHP integrieren
In Situationen, in denen der Seiteninhalt hauptsächlich statisch bleibt, aber von einer dynamischen Vorlage umgeben ist, kann die Nutzung von HTTP-Cache-Headern eine Optimierung erzielen Seitenlieferung. Hier ist eine vereinfachte Anleitung zur Implementierung von effektivem Caching mit PHP:
Wichtige Header für das Caching
Um Caching zu aktivieren, sollten Sie die folgenden Header senden:
Bedingte Anfragen und Handhabung
Eingehende bedingte Anfragen mit if-modified-since und if-none-match:
Bestimmen der Cache-Gültigkeit
Erwägen Sie beim Generieren des ETags die Verwendung einer Prüfsumme oder einer Kombination von Faktoren wie Benutzer ID, Sprache und Zeitstempel. Für länger anhaltende statische Inhalte legen Sie einen längeren Ablauf fest.
Beispielimplementierung
<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>
Das obige ist der detaillierte Inhalt vonWie kann ich HTTP-Caching mit PHP effektiv für dynamische Websites mit statischen Inhalten implementieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!