home | sitemap

Pagina's verversen met Ctrl-F5

In het kort:

De webserver(s) waarop het cms en uw website draaien maken gebruik van caching om websites snel en soepel aan bezoekers te kunnen tonen. De webservers zijn zo ingesteld dat ze pagina's, afbeeldingen, documenten, etc. een bepaalde tijd mogen vasthouden ('cachen') alvorens te kijken of er een nieuwe versie beschikbaar is. Ook uw browser houdt pagina's, etc. een bepaalde tijd vast zodat hij ze niet steeds hoeft op te halen. Alle systemen en software op het internet maken gebruik van caching (zie volgende hoofdstuk).

Als u een pagina publiceert of een nieuwe versie van een document of afbeelding upload, dan kan even duren voordat bezoekers ook daadwerkelijk de actuele versie te zien krijgen. Op zich is dat geen probleem, want een bezoeker weet niet of, en zo ja wanneer, u een pagina heeft gepubliceerd of een nieuwe document heeft geupload.
Als u echter zelf meteen het resultaat van uw wijziging gaat bekijken, dan kan het zijn dat u nog de oude versie te zien krijgt. Om de webserver en de browser te dwingen de actuele versie te tonen drukt u op de toetsencombinatie Ctrl-F5. Dit zorgt er voor dat de browser de webserver een seintje geeft om daadwerkelijk de actuele versie op te halen.

NB: De bekende toets F5 werkt niet in dit geval, want die zorgt er alleen voor dat de browser de pagina opnieuw ophaalt... maar geeft niet het seintje mee aan de webserver om direct de nieuwe versie te tonen.

In het lang:

Zonder caching geen internet

Alle systemen en software op het internet maken gebruik van 'caching'. Caching is een methode/werkwijze waarbij een systeem of software gegevens (tijdelijk) opslaat om ze een volgende keer weer snel te kunnen gebruiken. Zonder caching zou het hele internet onwerkbaar traag worden omdat alle systemen en software continue opnieuw gegevens zouden ophalen die misschien niet eens gewijzigd zijn. Denk bij 'gegevens' aan html-pagina's, afbeeldingen, documenten, resultaten van zoekopdrachten, etc.

Uw browser doet dat ook. Als een html-pagina of afbeelding voor het eerst wordt opgehaald slaat de browser een kopie van die pagina/afbeelding op incl. de datum van ophalen. De volgende keer dat de pagina wordt opgehaald vraagt de browser even aan de webserver of de html-pagina is gewijzigd (aan de hand van de opgeslagen datum).
Is de html-pagina niet gewijzigd, dan gebruikt de browser de opgeslagen versie. Dat scheelt tijd en dataverkeer (want de webserver hoeft de pagina niet op te halen of de zoekopdracht opnieuw uit te voeren en in plaats van de hele pagina of afbeelding gaat alleen een klein berichtje over de lijn).

Uw website wordt ook gecached...

De webservers en het cms maken ook gebruik van caching. Deze caching is zo ingesteld dat een html-pagina, afbeelding, etc. een bepaalde tijd mag worden 'vastgehouden': zonder te kijken of er wat gewijzigd is zal altijd de versie uit de cache worden getoond. Staat de pagina/afbeelding langer dan die bepaalde tijd in de cache, dan haalt de cache eerst de actuele versie op om te tonen en slaat het dan weer tijdelijk op.

U als redacteur van een website weet dat er wat gewijzigd is en verwacht direct de actuele pagina of afbeelding te zien. Om te voorkomen dat u moet wachten kunt u uw browser en daarmee de webserver 'vertellen' dat u de actuele versie wenst te zien. Met de toetscombinatie Ctrl-F5 kunt u daarvoor zorgen. Daarmee geeft de browser namelijk aan de webserver door dat de actuele versie getoond moet worden en niet de opgeslagen versie.

... en draait op meerdere webservers

Bovendien 'draaien' het cms en alle websites die er gebruik van maken, dus ook uw website(s), op een zogenaamde high availability-omgeving. Normaliter draait een website op één webserver. Valt die webserver uit, dan is de website uit de lucht (en hopelijk kan de webserver dan snel gerepareerd worden en/of een backup worden terug gezet). In een high availability-omgeving draait de website parallel op meerdere webservers. Vallen één of meerdere webservers uit, dan is er niets aan de hand, want de andere webservers nemen het werk dan over.

Om er voor te zorgen dat de webservers evenredig belast worden zorgt een extra server (die ook dubbel is uitgevoerd) er voor dat bezoekers naar de webserver worden gestuurd die op dat moment het minst belast is. Aangezien elke webserver zijn eigen cache heeft kan het dus zijn dat bezoeker x op webserver 1 uit komt en al de actuele versie van een pagina ziet en dat bezoeker y op webserver 3 uitkomt en nog de oude versie ziet. Bezoeker y (misschien een klant die beweert nog oude gegevens te zien) moet of even wachten of Ctrl-F5 gebruiken om de actuele versie te zien te krijgen.

Last but not least, ter info

Het heeft niets met caching te maken, maar wel met de high availability-omgeving waar uw website op draait: de omgeving is ook uitgerust met meerdere file- en backupservers. Mocht een file-server uitvallen, dan neemt een andere file-server de taak over. Uw bestanden (html-pagina, afbeeldingen, documenten, etc.) zijn dus altijd beschikbaar en zijn dubbel opgeslagen. Daar bovenop is er nog een backup-server die om de 4 uur en elke dag en elke week een backup maakt van al uw bestanden. Op elk moment zijn er dus 17(!) versies (tussen de 4 uur en 4 weken oud) van uw bestanden beschikbaar die in geval van nood terug gezet kunnen worden.