problème avec la mise en cache des images de mon site

WRInaute discret
bonjour a tous

cela fait des semaines que j essaye de comprendre pourquoi la mise en cache des images ne s effectue pas correctement sur mon site

j'ai donc un site en php et html pur et j essaye de l améliorer pour cela j utilise le site gtmetrix

je viens de découvrir que si je lance un test avec comme server de location London, UK les images ne se mettent pas en cache

par contre avec le server de location Vancouver, Canada elles se mettent en cache

je viens aussi de découvrir que je pouvais voir cela avec mon navigateur chrome lorsque je lance F12 et que je vais dans réseau que certaines images sont mises en cache mais pas d autres

pourtant les images ont la même extension
 
WRInaute accro
Quand on teste vite fait à la console, on voit qu'il y a un cache de seulement 4 heures pour les images et de 7 jours pour le js. A augmenter !
 
Nouveau WRInaute
Bonjour à toi,

Quelle est l'adresse de ton site ? As-tu configuré ton .htaccess pour la mise en cache des différentes extensions (images, javascript, css...) ?
Utilises-tu un CDN comme cloudlfare ? Si oui, penses à configurer la durée TTL du cache du navigateur.
 
WRInaute discret
bonjour Hayabuzha
l adresse de mon site est https://phil.pecheperle.be/
oui dans mon fichier htaccess j ai ce morceau de code

je suis hébergé chez hostinger mais apparemment cela serait du a cloudflare qui est actif sur un autre site ...

car pour la petite histoire j ai un site wordpress dans un domaine et un site en php thml dans le sous domaine

lorsque je regarde dans mon navigateur et que j essaye de voir la mise en cache de mon sous domaine on voit server cloudflare alors qu il désactiver pour ce meme sous domaine


# Mise en cache des fichiers dans le navigateur

Cache-Control: max-age=31536000


<IfModule mod_expires.c>
ExpiresActive On

# Images
#ExpiresByType image/jpeg "accès plus 1 an"
#ExpiresByType image/ "accès plus 1 an"
#ExpiresByType image/gif "accès plus 1 an"
#ExpiresByType image/png "accès plus 1 an"
#ExpiresByType image/webp "accès plus 1 an"
ExpiresByType image/svg+xml "accès plus 1 an"
#ExpiresByType image/x-icon "accès plus 1 an"



## EXPIRES CACHING ##

#ExpiresActive On
ExpiresByType image/jpg "access plus 1 year"
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/gif "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType image/x-icon "access plus 1 year"
ExpiresByType image/webp "access plus 1 year"
ExpiresByType image/png "access plus 1 year"

# Video
ExpiresByType video/webm "access plus 1 year"
ExpiresByType video/mp4 "access plus 1 year"
ExpiresByType video/mpeg "access plus 1 year"

# Fonts
ExpiresByType font/ttf "access plus 1 year"
ExpiresByType font/otf "access plus 1 year"
ExpiresByType font/woff "access plus 1 year"
ExpiresByType font/woff2 "access plus 1 year"
ExpiresByType application/font-woff "access plus 1 year"

# CSS, JavaScript
ExpiresByType text/css "access plus 1 year"
ExpiresByType text/javascript "access plus 1 year"
ExpiresByType application/javascript "access plus 1 year"

# Others
ExpiresByType application/pdf "access plus 1 year"
ExpiresByType image/vnd.microsoft.icon "access plus 1 year"
</IfModule>

# En-têtes
Header unset ETag
FileETag None

<ifModule mod_headers.c>
<filesMatch "\.(ico|jpe?g|png|gif|swf)$">
Header set Cache-Control "public"
</filesMatch>
<filesMatch "\.(css)$">
Header set Cache-Control "public"
</filesMatch>
<filesMatch "\.(js)$">
Header set Cache-Control "private"
</filesMatch>
<filesMatch "\.(x?html?|php)$">
Header set Cache-Control "private, must-revalidate"
</filesMatch>
</ifModule>

# Compressions des fichiers statiques
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/xhtml text/html text/plain text/xml text/javascript application/x-javascript text/css
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
Header append Vary User-Agent env=!dont-vary
</IfModule>

AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE font/opentype
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/json

qp7a.jpg
 
Nouveau WRInaute
Oui ton problème vient en effet de Cloudflare.
Je ne connais pas Hostinger mais regarde si Cloudflare est bien désactivé quand même, sinon regarde du côté de Cloudflare pour augmenter la durée du cache.
 
WRInaute discret
merci pour la reponse

mais le soucis si je bouge a cloudflare je risque de mettre le bazar dans le site qui est en domaine

regarde ce que je vois lorsque j accède a mon tableau de bord de hostinger et lorsque j ouvre cloudflare je ne vois que mon domaine

fbfz.jpg
 
WRInaute discret
alors la meilleure de toute si je désactive cloudflare le server cloudflare disparaît et j obtiens a premiere vue les bonne valeurs dans le cache de mon navigateur de mon sous domaine
 
Nouveau WRInaute
merci pour la reponse

mais le soucis si je bouge a cloudflare je risque de mettre le bazar dans le site qui est en domaine

regarde ce que je vois lorsque j accède a mon tableau de bord de hostinger et lorsque j ouvre cloudflare je ne vois que mon domaine

fbfz.jpg
Tu n'as pas beaucoup d'option en effet... Je pense que le message "La gestion des sous-domaine a été temporairement désactivée" doit indiquer que la mise en cache de cloudflare est désactivé mais que c'est malgré tout cloudflare qui gère le sous-domaine, d'où un cache si fiable, sinon tu aurais les valeurs que tu retrouves dans ton htaccess.

alors la meilleure de toute si je désactive cloudflare le server cloudflare disparaît et j obtiens a premiere vue les bonne valeurs dans le cache de mon navigateur de mon sous domaine
C'est normal, comme cloudlfare ne gère plus ton site, c'est automatiquement les valeurs présentes dans ton htaccess qui ont pris la relève.
 
Discussions similaires
Haut