Heim > Artikel > Backend-Entwicklung > So richten Sie den Cache für PHP-Seiten ein (drei Methoden)
In der Webentwicklung ist Caching ein äußerst wichtiges Konzept. Es bietet eine Möglichkeit, Leistungsprobleme zu lösen und den Bedarf an Serverressourcen zu reduzieren. PHP ist eine beliebte Websprache und kann natürlich auch Caching einrichten. In diesem Artikel erfahren Sie, wie Sie das Caching in PHP-Seiten einrichten.
1. Was ist Cache?
Cache ist ein im Computerbereich sehr verbreiteter Begriff. Sein Kern besteht darin, häufig verwendete Daten oder Programme in der Nähe der Benutzer zu speichern, um die Zugriffsgeschwindigkeit zu verbessern.
In der Webentwicklung bezieht sich Caching normalerweise auf das Speichern einer verarbeiteten Seite oder Datei im Speicher des Webservers, um die Verarbeitungszeit bei nachfolgenden Zugriffen zu verkürzen.
2. Warum Caching verwenden? Bei der Webentwicklung nimmt die Seitenerstellung normalerweise viel Zeit in Anspruch. Mit zunehmender Anzahl an Besuchen steigt auch die Belastung des Webservers. Wenn jede Seitenanforderung eine vollständige Verarbeitung erfordert, wird die Antwortzeit des Servers wahrscheinlich sehr langsam. Daher können wir für häufig angeforderte Seiten die Option wählen, diese Seiten im Speicher zwischenzuspeichern, wodurch die Belastung des Webservers verringert und die Seitenantwortgeschwindigkeit verbessert werden kann.
3. So richten Sie den Cache ein
In PHP können wir den Browser-Cache und die Cache-Zeit steuern, indem wir HTTP-Header festlegen. Die spezifische Implementierung lautet wie folgt:
Ablaufzeit der Seite festlegen// 设置缓存时间为1小时 $expires = 3600; header("Pragma: public"); header("Cache-Control: max-age=".$expires); header('Expires: ' . gmdate('D, d M Y H:i:s', time() + $expires) . ' GMT');
Im obigen Beispiel stellen wir die Cache-Zeit über Cache-Control
ein. Hier stellen wir die Cache-Zeit auf 1 Stunde ein.
Legen Sie den Zeitpunkt fest, zu dem die Seite geändert wurdeCache-Control
来设定缓存时间,这里我们将缓存时间设置为1小时。
如果我们知道一个页面可能在某个时间被修改,那么我们可以设置一个 Last-Modified
的标记来帮助浏览器判断该页面是否需要重新获取。如果今后访问时,服务器对页面进行了修改,那么该标记将同时计算。
// 读取文件修改时间并设置 Last-Modified 标记 $lastModifiedTime = filemtime($filePath); $etag = md5_file($filePath); header("Last-Modified: " . gmdate("D, d M Y H:i:s", $lastModifiedTime) . " GMT"); header("Etag: $etag");
在上述示例中,我们使用了 filemtime()
函数来获取文件的最后一次修改时间,并使用 md5_file()
Zuletzt geändert
festlegen Tag zur Hilfestellung Der Browser bestimmt, ob die Seite erneut abgerufen werden muss. Wenn der Server die Seite bei zukünftigen Besuchen ändert, wird gleichzeitig das Tag berechnet. // 增加版本号 $version = 1; $url = "http://www.example.com/index.php?v=".$version; header("Location: ".$url);
filemtime()
verwendet, um die letzte Änderungszeit der Datei abzurufen, und die Funktion md5_file()
, um den Etag-Wert abzurufen der Datei. Um Browser-Cache-Probleme zu lindern, können wir eine Versionsnummer oder ähnliche Tags aktualisieren, wenn sich der Seiteninhalt ändert, und den Browser die Seite erneut lesen lassen. Auf diese Weise kann der Browser auch dann die neue Seite abrufen, wenn sich der Seiteninhalt nicht geändert hat, wodurch das Problem abgelaufener Seiten vermieden wird.
rrreeeIm obigen Beispiel fügen wir der aufgerufenen URL eine Versionsnummer hinzu und leiten den Browser auf die URL um, wodurch der Browser angewiesen wird, die Seite erneut abzurufen, wenn die Seite aktualisiert wird.
🎜4. Zusammenfassung🎜🎜In der Webentwicklung ist Caching eine gängige Methode zur Verbesserung der Seitenantwortgeschwindigkeit. In PHP können wir den Cache und die Cache-Zeit der Seite steuern, indem wir HTTP-Header setzen. Allerdings kann das Caching auch Probleme verursachen, wenn es nicht richtig eingerichtet ist, z. B. dass einige Seiten nie aktualisiert werden. Daher müssen wir bei der Verwendung des Caches besonders auf die Einstellung der Cache-Zeit und die regelmäßige Aktualisierung der Inhaltsänderungsmarkierung der Seite achten. 🎜Das obige ist der detaillierte Inhalt vonSo richten Sie den Cache für PHP-Seiten ein (drei Methoden). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!