1000 FAQ, 500 Anleitungen und Lernvideos. Hier gibt es nur Lösungen!
Header verwenden, um das Caching von Ressourcen zu optimieren
Dieser Leitfaden behandelt die HTTP-Header, die verwendet werden, um das Caching von Ressourcen zu optimieren und zu überprüfen, ob eine Ressource seit dem letzten Abruf durch einen Client geändert wurde. Die Verwendung dieser Header hilft, die Bandbreite zu sparen und das Laden von Seiten zu beschleunigen, indem vermieden wird, unveränderte statische Ressourcen erneut zu senden.
Verwendung des Expires-Headers
Konfigurieren Sie die Caching-Header mit den Direktiven des Moduls mod_expires
in der Datei .htaccess
im Stammverzeichnis Ihres Webverzeichnisses (z.B. /web
oder /sites/domain.xyz
):
- Öffnen oder erstellen Sie die Datei
.htaccess
im Stammverzeichnis. Geben Sie den folgenden Code ein:
<IfModule mod_expires.c>
Geben Sie dann Ihre Befehle ein, z.B.:
ExpiresActive On ExpiresByType text/html "access plus 1 week" ExpiresByType image/jpeg "access plus 1 month" ExpiresByType text/css "access plus 1 month" ExpiresByType application/javascript "access plus 1 month"
- Diese Direktiven definieren die Gültigkeitsdauer spezifischer Ressourcen; in diesem Beispiel:
- HTML-Dateien werden eine Woche lang zwischengespeichert
- JPEG-Bilder, CSS-Dateien und JavaScript-Dateien werden einen Monat lang zwischengespeichert
- Sie können diese Werte nach Ihren Bedürfnissen anpassen
- Diese Direktiven definieren die Gültigkeitsdauer spezifischer Ressourcen; in diesem Beispiel:
Beenden Sie die Ergänzung mit dem schließenden Tag:
</IfModule>
- Speichern Sie die Datei
.htaccess
.
Verwendung des If-Modified-Since-Headers
Der HTTP-Header If-Modified-Since
wird von Clients verwendet, um zu überprüfen, ob eine Ressource seit dem letzten Abruf geändert wurde. Wenn die Ressource nicht geändert wurde, kann der Server mit einem 304 Not Modified
-Statuscode antworten, wodurch das erneute Senden der vollständigen Ressource vermieden wird. Dies hilft, die Bandbreite zu reduzieren und das Laden von Seiten zu beschleunigen.
Um den If-Modified-Since
-Header auf Ihrem Server zu nutzen:
Stellen Sie sicher, dass Ihr Webserver so konfiguriert ist, dass er den
Last-Modified
-Header sendet, wenn eine Ressource bereitgestellt wird; z.B. mit Apache kann dies über das Modulmod_headers
erfolgen:<IfModule mod_headers.c> Header set Last-Modified "expr=%{NOW}" </IfModule>
Wenn der Client eine spätere Anfrage für dieselbe Ressource stellt, wird er den
If-Modified-Since
-Header mit dem Datum der letzten bekannten Änderung einfügen:GET /resource HTTP/1.1 Host: www.example.com If-Modified-Since: Wed, 21 Oct 2015 07:28:00 GMT
Der Server vergleicht dann das Datum des
If-Modified-Since
-Headers mit dem Datum der letzten Änderung der Ressource; wenn die Ressource seit diesem Datum nicht geändert wurde, gibt der Server eine304 Not Modified
-Antwort zurück:HTTP/1.1 304 Not Modified
- Andernfalls sendet der Server die aktualisierte Ressource mit einem
200 OK
-Statuscode zurück.
Durch die Kombination der Expires
- und If-Modified-Since
-Header können Sie das Caching und die Änderungsprüfung Ihrer Ressourcen effektiv optimieren und so die Leistung für Ihre Benutzer verbessern.