j'utilisais le code HTML meta
balises pour désactiver le cache jusqu'à ce que j'appris que cela ne fonctionne que si le fichier est servi sur place, donc je désactivé le cache grâce à l'utilisation recommandée des en-têtes en mettant ce en haut de mes pages:La désactivation du cache de pages ne désactive pas la mise en cache des ressources.
header("Cache-Control: no-cache, no-store, must-revalidate");
header("Pragma: no-cache");
header("Expires: 0");
Ce que je ne trouve pas de réponse et il peut être stupide de demander, mais cela ne désactive pas les ressources de la mise en cache non plus, n'est-ce pas? J'étais dans mes outils de développement et je regardais l'onglet réseau et j'ai remarqué que la page était toujours chargée, mais des ressources telles que CSS et Javascript étaient encore en train de charger à partir du cache, ce qui me laisse penser que empêcher les ressources de la page d'être mis en cache, mais je ne sais pas si c'est vrai. Donc, ce que je faisais était ajouter un peu de versionnage aux ressources comme ceci:
<link rel="stylesheet" href="css/style.css?version=1">
qui a arrêté la ressource d'être mises en cache, ce qui est ce que je voulais, mais après avoir lu un peu plus, il semble que les en-têtes supplémentaires peuvent être utilisés pour cibler certains formats de fichiers et les empêcher d'être également mis en cache, ce qui donnerait les mêmes résultats que la gestion des versions, bien que d'une manière différente.
Est-ce que ma compréhension de cela est correcte et/ou les méthodes de mélange sont-elles une mauvaise pratique?
Peut-être que vous mettez en cache au niveau du serveur Web? Dans IIS vous avez cette option, presque sûr d'autres aussi – Oscar
pour appache: http://httpd.apache.org/docs/current/mod/mod_expires.html – nogad