.htaccess et la mise en cache

WRInaute discret
Bonjour à tous,

J'ai testé PageSpeed, pour vérifier que mon site était bien optimisé. Mais malheureusement, il me dit que certains fichiers Javascript ne sont pas mis en cache.

Suite à ça j'ai lu pas mal d'articles sur le sujet, et j'ai essayé pas mal de code à mettre dans le fichier .htaccess, comme ça :
Code:
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 7200 seconds"
........
ExpiresByType text/javascript "access plus 1 week"
ExpiresByType application/xhtml+xml "access plus 7200 seconds"
ExpiresByType application/javascript "access plus 1 week"
ExpiresByType application/x-javascript "access plus 1 week"
</IfModule>
<IfModule mod_headers.c>

<FilesMatch "\\.(js)$">
Header set Cache-Control "max-age=216000, private"
</FilesMatch>

</IfModule>

Mais rien n'y fait, PageSpeed continu à préciser que certains fichiers Javascript n'ont pas de "max-age". J'ai pu constater le même problème sur l'outil de développement de Chrome, les fichiers Javascript non pas de "max-age" non plus.

Pouvez-vous m'aider ?

Merci par avance,

Orsam
 
Dernière édition:
WRInaute discret
Ce sont des fichiers stockés sur votre server ou appelé de l’exterieur ? Si c’est de l’exterieur vos consignes n’ont aucun impact
 
WRInaute discret
Bonjour,

Non, non, ce sont mes librairies Javascript qui son sur mon serveur.. J'ai par exemple un fichier fonctions.js..
 
WRInaute accro
T'as bien le mod_expires dans Apache ?
T'es sûr du regex <FilesMatch "\\.(js)$"> ?

Il faut constater ça via les entêtes HTTP des fichiers respectifs.
 
WRInaute discret
Bonjour,

Pour le mod_expires, je ne sais pas comment vérifier. Je pensais le trouver avec phpinfo(), mais ce n'est pas le cas.
En ce qui concerne le regex, j'ai trouvé cette syntaxe dans beaucoup d'exemples sur le Web (donc je pense qu'elle est correcte).

Et dernière question, comment "constater ça via les entêtes HTTP des fichiers respectifs" ?

Merci pour ton aide.

Orsam
 
WRInaute discret
Voilà ce que j'ai :
Code:
Request URL: http://www.monsite.com/javascript/fonctions.js
Request Method: GET
Status Code: 200 OK
Remote Address: 128.45.195.48:80
Referrer Policy: no-referrer-when-downgrade
Accept-Ranges: none
Connection: Upgrade, Keep-Alive
Content-Type: text/html
Date: Thu, 06 Sep 2018 10:25:51 GMT
Keep-Alive: timeout=5
Server: Apache
Transfer-Encoding: chunked
Upgrade: h2
Vary: Accept-Encoding
Accept: */*
Accept-Encoding: gzip, deflate
Accept-Language: fr-FR,fr;q=0.9,en-US;q=0.8,en;q=0.7
Connection: keep-alive
Cookie: xavier-boully=o41qm%2COVwQ29RVl-VmkGKXxQJJ8
Host: www.monsite.com
Referer: http://www.monsite.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36

Est-ce que ça t'aide ??
 
WRInaute discret
Je ne comprends pas, le cache contrôle est toujours à "Cache-Control: no-cache"

Je te redonne mon .htaccess complet :

<IfModule mod_expires.c>
ExpiresActive on
# Perhaps better to whitelist expires rules? Perhaps.
ExpiresDefault "access plus 1 month"
# cache.appcache needs re-requests in FF 3.6 (thanks Remy ~Introducing HTML5)
ExpiresByType text/cache-manifest "access plus 0 seconds"
# Your document html
ExpiresByType text/html "access plus 0 seconds"
# Data
ExpiresByType text/xml "access plus 0 seconds"
ExpiresByType application/xml "access plus 0 seconds"
ExpiresByType application/json "access plus 0 seconds"
# Feed
ExpiresByType application/rss+xml "access plus 1 hour"
ExpiresByType application/atom+xml "access plus 1 hour"
# Favicon (cannot be renamed)
ExpiresByType image/x-icon "access plus 1 week"
# Media: images, video, audio
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType image/jpg "access plus 1 month"
ExpiresByType image/jpeg "access plus 1 month"
ExpiresByType video/ogg "access plus 1 month"
ExpiresByType audio/ogg "access plus 1 month"
ExpiresByType video/mp4 "access plus 1 month"
ExpiresByType video/webm "access plus 1 month"
# HTC files (css3pie)
ExpiresByType text/x-component "access plus 1 month"
# Webfonts
ExpiresByType font/truetype "access plus 1 month"
ExpiresByType font/opentype "access plus 1 month"
ExpiresByType application/x-font-woff "access plus 1 month"
ExpiresByType image/svg+xml "access plus 1 month"
ExpiresByType application/vnd.ms-fontobject "access plus 1 month"
# CSS and JavaScript
ExpiresByType text/css "access plus 1 year"
ExpiresByType application/javascript "access plus 1 year"
</ifmodule>
<IfModule mod_headers.c>
<filesMatch ".(css|jpg|jpeg|png|gif|js|ico)$">
Header set Cache-Control "max-age=2628000, public"
</filesMatch>
</ifmodule>

Est-ce que tu vois une erreur ?

Merci pour ton aide..

Orsam
 
WRInaute discret
Je viens d'envoyer un mail à Infomaniak pour savoir si les modes mod_header et mod_expires sont activés par defaut sur leurs serveurs...

Merci encore pour ton aide.

Orsam
 
Nouveau WRInaute
Bonjour, je reviens vers vous pour un meme souci, j'ai un htacess ou j'ai voulu mettre en cache les image , css et js pour mon site https://gafra.fr cependant quand je test ca ne marche pas. pouvez vous m'informer pourquoi voici le texte du htacess

## contrôle du cache navigateur - Expire headers
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 7200 seconds"
ExpiresByType image/jpg "access plus 1 week"
ExpiresByType image/jpeg "access plus 1 week"
ExpiresByType image/png "access plus 1 week"
ExpiresByType image/gif "access plus 1 week"
ExpiresByType image/svg+xml "access plus 1 week"
AddType image/x-icon .ico
ExpiresByType image/ico "access plus 1 week"
ExpiresByType image/icon "access plus 1 week"
ExpiresByType image/x-icon "access plus 1 week"
ExpiresByType text/css "access plus 1 week"
ExpiresByType text/javascript "access plus 1 week"
ExpiresByType text/html "access plus 7200 seconds"
ExpiresByType application/xhtml+xml "access plus 7200 seconds"
ExpiresByType application/javascript "access plus 1 week"
ExpiresByType application/x-javascript "access plus 1 week"
ExpiresByType application/x-shockwave-flash "access plus 1 week"
</IfModule>
 
Discussions similaires
Haut