Cache-Control er en HTTP-header, der styrer, hvordan browsere og delte cacher gemmer og genbruger en ressource. Direktiver som max-age, public, private, no-cache og immutable angiver friskhed, hvem der må cache, og om filen skal valideres før genbrug.
Hvorfor Cache-Control betyder noget
Uden en tydelig cachepolitik henter browseren ofte de samme CSS-, JavaScript- og billedfiler ved hvert besøg. Det øger antallet af requests, belaster serveren og forsinker gentagne sidevisninger. Med fornuftige regler genbruges uændrede filer lokalt, mens HTML og personlige svar kan holdes korte eller friskhedskontrolleres.
Reglerne hænger sammen med ETag og Expires: Cache-Control bestemmer primært, hvor længe en fil må bruges uden ny kontakt til serveren. Når friskheden udløber, kan browseren sende en valideringsrequest og få et 304 Not Modified i stedet for hele filen igen.
Cache-Control i WordPress
WordPress genererer HTML dynamisk, mens tema- og plugin-filer ofte kan caches længe, hvis de er versionsstyrede. Sæt headers i webserver, host eller CDN — ikke i flere cacheplugins samtidig, som kan overskrive hinanden.
- Brug lang
max-ageog gerneimmutabletil filer med versionsnummer i URL'en. - Hold HTML og loggede svar korte eller brug
no-cache, så indhold kan opdateres uden forældet cache. - Undgå
no-storesom standard; det fjerner nyttig browsercache og bør reserveres til følsomme svar. - Efter deploy skal ny CSS eller JS have ny URL, så besøgende får den opdaterede fil med det samme.
Sådan kontrollerer du headers
Åbn Chrome DevTools, vælg Network og genindlæs siden som udlogget besøgende. Kontrollér HTML, én CSS-fil og ét billede separat: se Cache-Control, statuskode og om filen kommer fra disk cache eller netværk. Efter en ændring skal den nye asset-URL give 200, mens den gamle stadig kan ligge i cache, indtil den udløber.
