J'utilise le HTTP 1.1
Cache-Control
pour mettre en œuvre la mise en cache côté client. Comme je ne mets mon site Web à jour qu'une fois par mois, j'aimerais que la mise en place de la mise en cache du côté du client soit possible. CSS
y JS
pour être mis en cache pendant 30 jours avec Cache-Control: max-age=2592000
. Le problème est que la période de 30 jours définie par Cache-Control
ne coïncide pas avec le cycle de mise à jour du site web, il commence à partir du moment où les utilisateurs visitent le site et se termine 30 jours plus tard, ce qui signifie qu'une mise à jour pourrait avoir lieu entre-temps et que les utilisateurs fonctionneraient avec un contenu obsolète pendant un certain temps, ce qui pourrait casser le rendu du site web si, par exemple, l'application HTML
y CSS
ne correspondent plus.
Comment puis-je mettre le contenu en cache côté client pour des périodes de plusieurs jours tout en incitant les utilisateurs à rafraîchir leur écran ? CSS/JS
des fichiers après la mise à jour du site web ?
Une solution à laquelle je pourrais penser est que si les mises à jour du site web peuvent être programmées, la max-age
renvoyée par le serveur pourrait être diminuée chaque jour en conséquence, de sorte que, quelle que soit la date à laquelle les internautes visitent le site, la fin de la période de mise en cache coïnciderait avec la mise à jour du site, mais modifier la configuration du serveur chaque jour va à l'encontre de l'un de mes principes d'administrateur système (une fois qu'il fonctionne, il ne faut pas y toucher).