# CDN en caching uitgelegd: hoe bewaarde kopieën je website sneller maken

Gepubliceerd: 11 oktober 2026 · 7 min leestijd

Door [Tekin Uslu](https://www.linkedin.com/in/tekinuslu/) · Digitaalnu

Caching is het bewaren van een kopie van een antwoord, zodat dat antwoord de volgende keer niet opnieuw bij de server hoeft te worden opgehaald. Een CDN, content delivery network, doet hetzelfde op servers die op veel plekken staan, zodat een bezoeker een kopie krijgt van de server die het dichtst bij hem ligt. Dit artikel legt uit hoe dat werkt, welke instellingen ertoe doen en wat er stuk kan gaan als je ze verkeerd zet. We noemen geen snelheidswinsten in cijfers, omdat de bronnen die niet geven.

In dit artikel

1. Wat is caching?
2. Wat is het verschil tussen een private en een shared cache?
3. Hoe bepaalt Cache-Control hoe lang iets bewaard blijft?
4. Wat doet een CDN?
5. Wat is het nadeel van een CDN?
6. Wat kan caching breken?
7. Hoe ga je er praktisch mee om?

## Wat is caching?

Elke keer dat een bezoeker een pagina opent, stuurt zijn browser een verzoek en antwoordt de server met een response. MDN Web Docs beschrijft dat opgeslagen HTTP-responses twee toestanden hebben: fresh en stale. Grof gezegd, als uitleg bij die twee woorden: een fresh response is nog bruikbaar als kopie, een stale response is verouderd en hoort eerst te worden gecontroleerd. Vanuit de bezoeker gezien is een stale response dus niet fout, maar mogelijk niet meer actueel. Alle instellingen die je als beheerder aanpast, draaien uiteindelijk om het bepalen van die grens.

Hoe lang een response fresh blijft, geef je aan met headers. De bekende header is Cache-Control, met de directive max-age. Er is ook een oudere header, Expires. MDN schrijft dat als zowel Expires als Cache-Control: max-age aanwezig zijn, max-age wordt voorgetrokken. Wil je de levensduur aanpassen, kijk dan dus naar max-age. Zo voorkom je dat twee instellingen elkaar tegenspreken zonder dat iemand het merkt. Het idee lijkt op de TTL, die MDN omschrijft als het aantal seconden dat een resource bij HTTP of DNS door de aanvrager gecachet mag worden. Daarover straks meer.

## Wat is het verschil tussen een private en een shared cache?

Wie bewaart de kopieën? MDN maakt onderscheid tussen twee soorten caches. Een private cache is gekoppeld aan een specifieke client en is typisch de cache van de browser. Alles wat daarin staat, is alleen voor die ene gebruiker bedoeld. Een bezoeker die zijn eigen pagina’s opnieuw opent, merkt daarvan dat de pagina sneller laadt, zonder dat iemand anders daar iets van ziet. Die cache beheer je niet zelf, maar je stuurt hem wel aan met de headers die je site meestuurt.

Daartegenover staat de shared cache. Volgens MDN zit die tussen de client en de server en kan hij responses opslaan die tussen gebruikers worden gedeeld. Een shared cache kan één kopie voor veel bezoekers hergebruiken. Daar zit de winst, en ook het risico: wat in een shared cache komt, kan bij de volgende bezoeker terechtkomen. Je moet dus goed weten welke responses voor iedereen gelijk zijn en welke per persoon verschillen.

## Hoe bepaalt Cache-Control hoe lang iets bewaard blijft?

Wat leg je in Cache-Control vast? Een paar voorbeelden uit MDN. Bevat een response gepersonaliseerde inhoud en wil je dat die alleen in de private cache wordt opgeslagen, dan moet je de private-directive opgeven. En met de no-cache-directive kun je validatie afdwingen. De naam is misleidend: no-cache verbiedt het bewaren niet, maar eist dat de cache eerst controleert of de kopie nog klopt. Wie dat verwart met een verbod op opslaan, zet de verkeerde instelling.

De tijd is dus een afweging. Een lange levensduur levert minder verzoeken naar je server op, maar betekent dat een wijziging langer nodig heeft om zichtbaar te worden. Een korte levensduur geeft snel actuele inhoud, maar je gebruikt de cache minder. Er is geen universele waarde. Welke je kiest, hangt af van hoe snel de inhoud verandert en hoe erg het is als iemand een oude versie ziet. Een afbeelding in je logo verandert zelden, een prijs op een productpagina kan elke dag anders zijn.

## Wat doet een CDN?

Een CDN is volgens MDN een groep servers die over veel locaties zijn verspreid. Die servers slaan duplicaten van data op, zodat ze verzoeken kunnen beantwoorden op basis van welke server het dichtst bij de betreffende eindgebruiker staat. Wikipedia omschrijft een CDN als een geografisch verspreid netwerk van proxyservers en bijbehorende datacenters. Je kunt het zien als een shared cache op wereldschaal die vóór jouw eigen server staat en voor jou de kopieën bewaart.

Hoe sneller een bezoeker bij een kopie kan, hoe minder zijn verzoek hoeft te reizen en hoe minder je eigen server te doen heeft. Hoeveel sneller, hangt van de site en de bezoeker af, en de bronnen noemen daar geen getal voor. Een CDN is niet per se nodig. Vraag eerst wat je probleem is voordat je een oplossing aanschaft die extra beheer meebrengt. Meet dus zelf wat het effect voor jouw site is, bijvoorbeeld met een paar controles voor en na een wijziging, en schrijf het resultaat op.

## Wat is het nadeel van een CDN?

MDN noemt ook een nadeel van een CDN: het introduceert een extra afhankelijkheid van een derde partij. Als de CDN uitvalt, in een regio wordt geblokkeerd of definitief wordt stopgezet, dan werkt je website niet goed meer. Dat is geen reden om een CDN te vermijden, wel om te weten dat je een schakel toevoegt. Vraag je hostingpartij hoe de site zich gedraagt als de CDN niet bereikbaar is, en wie dan bij wie aanklopt.

## Wat kan caching breken?

Wat kan caching breken? Het probleem begint bij pagina’s die per persoon verschillen. MDN zegt dat gepersonaliseerde inhoud met de private-directive alleen in de private cache hoort. Denk aan een winkelwagen, een account of een afrekenpagina op een webshop. Komt zo’n pagina per ongeluk in een shared cache terecht, dan kan de volgende bezoeker iets zien dat niet voor hem bedoeld is. Test dit dus altijd uit op je eigen site, ingelogd en uitgelogd, voordat je een cache-instelling aanzet.

Een tweede probleem is verouderde inhoud. Je past een tekst of een prijs aan, maar de bezoeker ziet nog de oude versie omdat de kopie nog fresh is. Dat is geen fout van de cache, maar het gevolg van de afgesproken levensduur. Los het op door de cache te legen na een wijziging, of door voor dynamische onderdelen een korte levensduur of no-cache te gebruiken. Controleer na elke wijziging aan je site of de bezoeker de nieuwe versie krijgt.

Een derde punt: caching kan fouten maskeren. Je ziet dat de site werkt, terwijl dat een bewaarde kopie is en de server zelf kapot is. Bekijk je site daarom ook eens via een andere verbinding en in een privévenster, en laat monitoring op de server zelf draaien. TTL werkt ook bij DNS: de tijd in seconden dat een record gecachet mag worden. Een wijziging van een DNS-record is dus niet direct overal zichtbaar, en daar moet je bij een verhuizing rekening mee houden.

## Hoe ga je er praktisch mee om?

Hoe ga je er praktisch mee om? Begin zonder CDN als je geen aanwijsbaar probleem hebt. Weet wat je cache-headers doen en test ze met een ingelogde en een uitgelogde gebruiker. Leg vast hoe je de cache leegt na een wijziging. Bij Digitaalnu begint [hosting](https://digitaalnu.nl/diensten/hosting) vanaf €25 per maand, en bij een [webshop](https://digitaalnu.nl/diensten/webshops) bepalen we samen wat wel en niet in een cache hoort. Leg ook vast wie het beheer van de CDN-instellingen heeft, zodat bij een storing duidelijk is bij wie je aanklopt. Lees ook over [hostingvormen](https://digitaalnu.nl/blog/hostingsoorten-vergeleken-shared-vps-managed) en [HTTPS-certificaten](https://digitaalnu.nl/blog/ssl-tls-en-https-certificaten-uitleg).

## Startprijzen van Digitaalnu

| Dienst | Vanaf | Doorlooptijd |
| --- | --- | --- |
| Website voor vakmensen | €750 per project | 2 weken |
| Webshop op maat | €2.500 per project | ongeveer 6 weken |
| Webapplicatie of maatwerk software | €2.000 per project | ongeveer 6 weken |
| Mobiele app | €5.000 per project | ongeveer 6 weken |
| WordPress-onderhoud | €45 per maand | doorlopend |
| Managed hosting | €25 per maand | doorlopend |

Vaste prijs vooraf, geen maximumbedrag: de definitieve prijs volgt na een gratis intakegesprek.

## Veelgestelde vragen

### Wat is het verschil tussen een CDN en caching?

Caching is het bewaren van een kopie van een antwoord, zodat het niet elke keer opnieuw wordt opgehaald. Een CDN is een groep servers op veel locaties die kopieën van data opslaat. Een CDN is dus een manier om te cachen, op plekken die dichter bij de bezoeker liggen dan jouw eigen server.

### Wat betekent fresh en stale?

Volgens MDN Web Docs zijn opgeslagen HTTP-responses in een van twee toestanden: fresh of stale. Grof gezegd, als uitleg: een fresh response is nog bruikbaar als kopie, een stale response is verouderd en hoort eerst te worden gecontroleerd voordat de cache hem weer gebruikt.

### Waarom moet ik oppassen met gepersonaliseerde pagina’s?

Een response met gepersonaliseerde inhoud mag niet in een gedeelde cache terechtkomen, want dan krijgt de volgende bezoeker mogelijk jouw inhoud te zien. MDN zegt dat je in dat geval de private-directive moet opgeven, zodat de response alleen in de private cache wordt opgeslagen.

### Wat is het nadeel van een CDN?

MDN noemt de extra afhankelijkheid van een derde partij. Valt de CDN uit, wordt hij in een regio geblokkeerd of wordt hij definitief stopgezet, dan werkt je website niet goed meer. Overweeg dus hoe je site zich gedraagt als de CDN even niet bereikbaar is.

### Hoe dwing ik af dat een cache eerst controleert?

Met de no-cache-directive in de Cache-Control-header kun je validatie afdwingen. De cache mag dan een opgeslagen kopie gebruiken, maar controleert eerst bij de server of die kopie nog klopt. Dat is nuttig voor inhoud die kan veranderen maar toch bewaard mag worden.

## Waar dit op gebaseerd is

- MDN Web Docs (Mozilla): [CDN - Glossary | MDN](https://developer.mozilla.org/en-US/docs/Glossary/CDN), geraadpleegd op 11 oktober 2026.
  > “A CDN (Content Delivery Network) is a group of servers spread out over many locations. These servers store duplicate copies of data so that servers can fulfill data requests based on which servers are closest to the respective end-users.”
  > “It introduces an additional dependency on a third-party service. If the CDN goes down, is blocked in a region, or is permanently shut down, your website will malfunction.”
- Wikipedia: [Content delivery network - Wikipedia](https://en.wikipedia.org/wiki/Content_delivery_network), geraadpleegd op 11 oktober 2026.
  > “A content delivery network (CDN) or content distribution network is a geographically distributed network of proxy servers and corresponding data centers.”
- MDN Web Docs (Mozilla): [HTTP caching - HTTP | MDN](https://developer.mozilla.org/en-US/docs/Web/HTTP/Guides/Caching), geraadpleegd op 11 oktober 2026.
  > “Stored HTTP responses have two states: fresh and stale.”
  > “A private cache is a cache tied to a specific client — typically a browser cache.”
  > “The shared cache is located between the client and the server and can store responses that can be shared among users.”
  > “If both Expires and Cache-Control: max-age are available, max-age is defined to be preferred.”
  > “If a response contains personalized content and you want to store the response only in the private cache, you must specify a private directive.”
  > “you can use the no-cache directive to force validation.”
- MDN Web Docs (Mozilla): [TTL - Glossary | MDN](https://developer.mozilla.org/en-US/docs/Glossary/TTL), geraadpleegd op 11 oktober 2026.
  > “TTL (as an unsigned 32-bit integer) being a part of the HTTP response header or the DNS query, indicates the amount of time in seconds during which the resource can be cached by the requester.”
- IETF / RFC Editor: [RFC 1035: Domain Names - Implementation and Specification](https://www.rfc-editor.org/rfc/rfc1035.txt), geraadpleegd op 11 oktober 2026.
  > “TTL a 32 bit unsigned integer that specifies the time interval (in seconds) that the resource record may be cached before it should be discarded.”

## Over de auteur

Tekin Uslu is oprichter van Digitaalnu en van moederbedrijf DigiHand (Haarlem, sinds 2009). Hij werkt sinds 2006 in data engineering, geo-informatie en IT-architectuur. [Meer over Tekin Uslu →](https://digitaalnu.nl/over-ons/tekin-uslu)

Wil je hier meer over weten?

Neem contact op voor een vrijblijvend gesprek of bekijk onze diensten.

[Plan een gratis gesprek](https://digitaalnu.nl/contact) · [Bekijk onze hosting →](https://digitaalnu.nl/diensten/hosting)

## Gerelateerde diensten

- [Beheerde hosting →](https://digitaalnu.nl/diensten/hosting)
- [WordPress-onderhoud →](https://digitaalnu.nl/diensten/wordpress-onderhoud)
- [Webshop laten bouwen →](https://digitaalnu.nl/diensten/webshops)

## Meer over wordpress, onderhoud en hosting

- [WooCommerce bijwerken zonder je winkel te breken: back-up, staging en controle](https://digitaalnu.nl/blog/woocommerce-onderhoud-en-updates)
- [Uptime en monitoring van je website: wat meet je en wat doe je met een melding?](https://digitaalnu.nl/blog/website-uptime-en-monitoring-wat-meet-je)
- [DNS uitgelegd voor ondernemers: A, CNAME, MX, TXT en TTL](https://digitaalnu.nl/blog/dns-uitgelegd-voor-ondernemers)

Laatst bijgewerkt: 11 oktober 2026

## Contact

- Telefoon: 023 230 21 42
- E-mail: info@digitaalnu.nl
- Bezoekadres: Wateringweg 1 A03, 2031 EK Haarlem
- KVK: 34315122
- Contactpagina: https://digitaalnu.nl/contact

---

Bron: https://digitaalnu.nl/blog/cdn-en-caching-uitgelegd
