Nous avons une application en PHP. Le problème vient quand nous faisons des mises à jour et des changements dans cette application. Parfois, les utilisateurs ne reçoivent pas la dernière version de l'application (HTML et javascript sont principalement modifiés) en raison du cache du navigateur. Une fois que nous avons réalisé à ce sujet, nous avons pu inclure le code suivant dans notre application (Nous exécutons avant tout HTML est envoyé au navigateur)Problème avec les mises à jour de l'application PHP à cause du cache du navigateur
function clean_cache(){
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache: no-cache");
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");
}
Mais nous avons encore quelques utilisateurs qui ont des versions plus anciennes de notre application . Nous lisons qu'une solution possible est d'utiliser un javascript demandant au serveur via ajax s'il y a une mise à jour. Si oui, forcez un rechargement. Si c'est la meilleure façon de résoudre notre problème: Comment pouvons-nous implémenter cette solution? Si vous avez d'autres solutions possibles, nous serons très heureux de le savoir.
Merci
Ma conjecture est que les utilisateurs qui consultent la "vieille" version de votre programme ont IE. Par conséquent ajax serait mon choix aussi parce que IE n'essaie pas parfois de recharger la page si vous cliquez sur le bouton de rechargement afin que le changement ne soit pas remarqué. – ITroubs
Définir "la dernière version de l'application". Cela concerne-t-il le code HTML, les ressources JavaScript ou CSS, ou les images? –
Je l'ai édité. Mais surtout, cela peut être n'importe quel changement que nous devons faire: HTML ou javascrpt, mais nous prévoyons aussi d'ajouter des images, et cela peut être un problème dans les prochaines semaines. – pepersview