Beoordeel dit artikel :
Dit artikel was nuttig voor jou ?
Ja
Geen
Vous avez noté 0 étoile(s)
Sommaire
Procédure
In deze documentatie leggen we stap voor stap uit hoe je Varnish en browsers kunt dwingen om je bronnen in de cache te houden, zelfs als ze Pragma: no-cache of Cache-Control: no-cache verzoeken sturen.
LWS shared hosting en managed cPanel/VPS pakketten zijn gebaseerd op de :
Browser ⇄ NGINX (SSL + HTTP/2) ⇄ Varnish Cache ⇄ Apache/PHP-FPM
Als alles correct is geconfigureerd, kan Varnish tot 1000 keer sneller zijn dan directe toegang tot PHP, terwijl de CPU van de server wordt ontlast.
| Element | Invloed op de cache | Hoe te beïnvloeden |
| Methode | Alleen GET en HEAD komen in aanmerking | Vermijd POST's voor openbare pagina's |
| Cache-Control, Expires, Pragmaantwoordkoppen | Bepalen duur en reikwijdte | Instellen via .htaccess (zie §3) |
| Cookies / Set-Cookie | Eén cookie aanwezig = standaard geen caching | Onnodige cookies verwijderen of uitschakelen |
| HTTP-status | 200, 203, 301, 302, 404, 410 kunnen in de cache worden opgeslagen | Geen actie, maar vermijd 500! |
Activeer de mod_headers module (dit is de standaard bij LWS) en plaats dan het volgende fragment waar je maar wilt:
Header set Cache-Control "public, max-age=3600, s-maxage=3600, stale-while-revalidate=60, stale-if-error=86400" Header set Expires "Thu, 31 Dec 2037 23:55:55 GMT"
Door hetzelfde .htaccess-bestand in de map "/images/" te zetten, wordt de regel alleen toegepast op de map "images".
Header set Cache-Control "public, max-age=2592000, s-maxage=2592000, immutable".
immutable: vertelt de browser dat er geen revalidatie nodig is totdat het object is verlopen; ideaal voor bestanden met versiebeheer (style.483bf.css).
3.3 Korte cache voor HTML
Header set Cache-Control "public, max-age=300, s-maxage=600, must-revalidate".
Verloopt na 5 min client-side en 10 min Varnish-side, daarna must-revalidate.
| Werkelijk geval | Fragment van .htaccess | Waarom zou het dit doen? |
| Landingspagina wordt elk uur bijgewerkt | max-age=600, s-maxage=1200 | Bezoekers krijgen "bijna live" gegevens zonder PHP te overbelasten |
| CSS/JS bijgewerkt | max-age=31536000, onveranderlijk | Vrijwel geen serververkeer, onmiddellijk laden |
| E-commerce productafbeeldingen | max-age=604800 | Vermindert TTFB, versnelt de catalogus |
| Back-office / wp-admin | geen opslag, privé | Vermijdt het plaatsen van gevoelige gegevens in de gedeelde cache |
curl -X PURGE -H "Host: example.com" https://exemple.com/chemin/ressource.jpgban req.http.host == "example.com" && req.url ~ "/images/"
curl -I https://exemple.com/style.css
Kijken naar :
Met Chrome/Edge: DevTools > Netwerk > Cache uitschakelen kan een eerste bezoeker worden gesimuleerd.
Je Varnish cache is nu onder controle!
Beoordeel dit artikel :
Dit artikel was nuttig voor jou ?
Ja
Geen
1mn lezen
Hoe krijg ik toegang tot statistieken over sitebezoeken?
1mn lezen
Hoe activeer ik Mod_PageSpeed op mijn site?
1mn lezen
Hoe gebruik ik de cache-modules op LWSPanel?
3mn lezen
Versnel je site met LWS Cache