Bonjour,
Je suis à la recherche d'une méthode fiable, permettant d'actualiser à coup sûr toutes les images d'une page web, en forçant le navigateur à les demander au serveur, plutôt que d'aller les rechercher dans sa cache.
Nous concevons un logiciel qui permet de composer des images, par assemblage d'éléments <DIV> html, sur une image de fond.
Ce logiciel comporte un script de screenshoting, qui capture périodiquement l'image, avec toutes les <DIV> qui la superposent, et la sauve dans un petit picto.png de présentation.
Le screenshoting fonctionne correctement, le petit picto conforme est bien créé.
Ensuite, lorsqu'on retourne à la page d'accueil, qui présente tous les pictos des images éditables dans une galerie, on retrouve l'ancien picto antérieur aux modifications.
J'ai tout essayé, pour forcer le navigateur à interroger le serveur, notamment :
Des headers, en PHP
Des balises meta :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <?php header("Cache-Control: no-store, no-cache, must-revalidate, max-age=0"); header("Cache-Control: post-check=0, pre-check=0", false); header("Pragma: no-cache"); ?>
Rien n'y fait. Le navigateur (en l'espèce, Chrome sous Windows) fait ce qu'il veut.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <!DOCTYPE html> <HTML> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=utf-8"> <META http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" /> <META http-equiv="Pragma" content="no-cache" /> <META http-equiv="Expires" content="1" /> </HEAD> ...
Ma question est donc de savoir quelle est l'instruction-miracle qui force, à coup sûr, tous les navigateurs à recharger la page <U>et toutes ses images</U>, depuis le serveur, et non depuis sa cache, ou un éventuel proxy.
Une instruction qui fonctionne sur tous les navigateurs récents : Firefox, Chrome, Chromium, Opera, Safari, MS-Edge, ...
Sans cela, les clients pourraient douter de la pertinence du logiciel, semble ne pas intégrer les modifications qu'il vient de porter récemment aux images.
Merci.
Christian.
Partager