La mise en œuvre le contrôle de cache à l'aide .htaccess sur le serveur Apache
-
30-09-2019 - |
Question
ok, je suis toujours essayer d'obtenir ma tête autour de certaines des choses de la mise en cache et je suis passé par quelques exemples que je pourrais trouver sur Google. J'ai ajouté le code suivant à mon fichier .htaccess:
### activate mod_expires
ExpiresActive On
### Expire .gif's 1 month from when they're accessed
ExpiresByType image/gif "access plus 3 months"
ExpiresByType image/png "access plus 3 months"
ExpiresByType image/jpg "access plus 3 months"
ExpiresByType text/javascript "access plus 3 months"
En utilisant les outils de vérification Chrome et l'outil Firebug YSlow, il ressemble à ceci est la mise en cache certaines de mes images / fichiers, mais pas de loin tous. J'ai encore une liste de fichiers (.jpg, .js et .css - Je sais que je ne l'ai pas mis les fichiers à mettre en cache css ici) qui ne sont pas mise en cache. Le message dans l'audit Chrome indique simplement The following resources are missing a cache expiration. Resources that do not specify an expiration may not be cached by browsers:
quelques-unes des images qui ne sont pas mise en cache sont des images d'arrière-plan, d'autres font partie d'une galerie de js et qu'ils sont appelés par la JS - que cela pourrait être affecter pourquoi ils ne sont pas en cache
Désolé je ne peux pas donner un lien vers le code -. Des sites encore sous enveloppements et limité à son client uniquement
Merci à l'avance!
La solution
On dirait que vous avez écrit les types MIME mal:
# enable expirations
ExpiresActive On
ExpiresDefault "access plus 1 week"
ExpiresByType image/gif "access plus 1 week"
ExpiresByType image/png "access plus 1 week"
ExpiresByType image/jpeg "access plus 1 week"
ExpiresByType image/pjpeg "access plus 1 week"
ExpiresByType text/javascript "modification plus 1 week"
ExpiresByType application/javascript "modification plus 1 week"
ExpiresByType text/css "modification plus 1 week"