Au fur et à mesure que le site Web continue de se développer, nous devons souvent mettre à jour les fichiers JS et CSS du site Web. Mais nous savons tous que les navigateurs disposent d'un mécanisme de mise en cache. Par conséquent, lorsque les utilisateurs parcourent le site Web, les nouveaux fichiers JS et CSS ne sont pas mis à jour et ils continuent à utiliser les anciens fichiers, dont la mise en cache prendra beaucoup de temps. le navigateur. Cela affectera l’expérience utilisateur du site Web. Alors comment résoudre ce problème ? Aujourd'hui, cet article explique comment modifier le cache JS et CSS dans le fichier via PHP afin que les utilisateurs puissent utiliser les derniers fichiers JS et CSS lors de la visite du site Web.
Avant de présenter comment modifier le cache js et css dans le fichier, nous devons comprendre ce qu'est le cache. La mise en cache fait référence à la sauvegarde temporaire des données demandées localement afin de pouvoir y accéder plus rapidement la prochaine fois que les informations seront nécessaires. Le plus grand avantage de la mise en cache est qu’elle réduit la charge sur le serveur, améliorant ainsi les performances du site Web. Cependant, un manque de mise en cache peut amener le navigateur à utiliser des fichiers expirés au lieu des dernières versions. C'est pourquoi nous devons modifier le cache js et css dans le fichier.
Cependant, avant de modifier le cache de js et css, nous devons comprendre les connaissances de base des codes d'état HTTP. Le code d'état HTTP est un code numérique à trois chiffres utilisé pour indiquer au client le résultat de la requête. Parmi eux, HTTP 200 signifie que la requête a réussi, tandis que HTTP 304 signifie que votre ressource n'a pas encore été mise à jour. Si nous voulons que le navigateur utilise de nouveaux fichiers JS et CSS, nous devons modifier le code d'état HTTP pour indiquer au navigateur que le fichier doit être demandé à nouveau à chaque fois.
La première chose dont nous avons besoin est d'ajouter un numéro de version à la fin du code js et css. Lors de la mise à jour, le numéro de version sera modifié en conséquence et le navigateur demandera à nouveau le fichier en raison du changement de numéro de version. Le numéro de version ici peut être un horodatage ou une chaîne définie arbitrairement.
<link rel="stylesheet" href="/css/main.css?v=xxx" type="text/css"> <script src="/js/main.js?v=xxxx"></script>
Il existe deux manières principales de modifier le cache de fichiers : via les informations d'en-tête php et via les fichiers htaccess
La fonction header() de php peut définir les informations d'en-tête http. Nous pouvons utiliser la fonction header() pour définir les informations d'en-tête http de cache-control, pragma (protocole) et expires (délai d'expiration absolu) pour indiquer au navigateur de ne pas mettre en cache. Comme suit :
// 设置js和css文件不缓存 header('Cache-Control:no-cache,must-revalidate'); header('Pragma:no-cache'); header('Expires:0');
htaccess est un fichier de configuration utilisé pour configurer le serveur web Apache On peut modifier le cache en modifiant le contenu du fichier htaccess. Ajoutez le code suivant après le fichier .htaccess pour que le navigateur demande à nouveau le fichier :
<IfModule mod_expires.c> ExpiresActive on ExpiresDefault "access plus 1 year" </IfModule>
Dans cet article, nous avons appris ce qu'est le cache et comment modifier le cache js et css dans le fichier via PHP pour résoudre problèmes de cache du navigateur. Nous avons introduit deux méthodes : modifier le cache via les informations d'en-tête PHP et les fichiers htaccess. De cette façon, dans le futur processus de développement du site Web, nous pourrons mieux résoudre le problème de mise en cache et améliorer l'efficacité opérationnelle du site Web et l'expérience utilisateur.
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!