Lors de la mise à jour du CSS d'un site Web, les navigateurs peuvent continuer à mettre en cache la version obsolète, ce qui entraîne des problèmes de rendu. Cet article explore plusieurs méthodes pour forcer une actualisation du CSS mis en cache.
Pour résoudre le problème de mise en cache, envisagez les options suivantes :
Qu'essayons-nous d'atteindre ?
Le comportement de mise en cache idéal consiste à récupérer une nouvelle ressource la première fois qu'elle est demandée et à la récupérer. ensuite depuis le cache local jusqu'à son expiration.
Comportement de mise en cache observé
Pour comprendre le comportement de mise en cache des navigateurs, un tableau résume divers scénarios et leurs résultats observés.
Type | Cache Headers | Observed Result |
---|---|---|
Static filename | Expiration 1 Year | Taken from cache |
Static filename | Expire immediately | Never caches |
Static filename | None | HTTP 304 (not modified) |
Static query string | Expiration 1 Year | HTTP 304 (not modified) |
Static query string | Expire immediately | HTTP 304 (not modified) |
Static query string | None | HTTP 304 (not modified) |
Random query string | Expiration 1 Year | Never caches |
Random query string | Expire immediately | Never caches |
Random query string | None | Never caches |
Chaîne de requête
L'ajout d'un paramètre aléatoire à l'URL CSS force une nouvelle requête HTTP 200, mais uniquement lors de la rencontre initiale. Les requêtes ultérieures peuvent toujours renvoyer des 304.
Modification du chemin
La création d'un nouveau chemin offre une solution plus permanente. Vous pouvez automatiser le processus de réécriture du chemin avec un numéro de version ou un autre identifiant.
Renommer les fichiers
Une approche alternative consiste à renommer les fichiers CSS à chaque version, garantissant une nouvelle demande lorsque les chemins mis à jour sont référencés dans le HTML.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!