5 votes

Difficulté à minimiser les requêtes 304

En ce moment, j'essaie de minimiser les requêtes 304 sur mon site web. J'ai mis en œuvre les suggestions proposées ici :

Demander aux navigateurs de mettre en cache de manière aussi agressive que possible

Cependant, quoi que je fasse, certaines images refusent d'être extraites du cache, même si elles sont similaires à d'autres qui sont extraites. Actuellement, nous utilisons IIS 7.5 et Chrome pour visualiser le trafic réseau.

Voici un exemple de la réponse initiale pour l'image, btn-blue.png, qui sera extraite du cache :

Accept-Ranges:bytes
Content-Length:49585
Content-Type:image/png
Date:Fri, 27 Jan 2012 16:02:26 GMT
ETag:"26cb96cdccc1:0"
Expires:Sat, 31 Dec 2012 00:00:00 GMT
Last-Modified:Thu, 26 Jan 2012 20:49:46 GMT
Server:Microsoft-IIS/7.5
X-Powered-By:ASP.NET

Voici un exemple d'en-tête de réponse pour l'image, topnav-blue-poweredbyipipeline.png, qui ne sera jamais extraite du cache :

Accept-Ranges:bytes
Content-Length:2680
Content-Type:image/png
Date:Fri, 27 Jan 2012 16:02:17 GMT
ETag:"b85767a6cdccc1:0"
Expires:Sat, 31 Dec 2012 00:00:00 GMT
Last-Modified:Thu, 26 Jan 2012 20:49:47 GMT
Server:Microsoft-IIS/7.5
X-Powered-By:ASP.NET

Vous savez pourquoi l'un tire et pas l'autre ?

5voto

Brian S. Points 295

On a donc trouvé pourquoi ça arrivait. Il s'avère que si vous utilisez le bouton Entrée pour naviguer vers une page Web, Chrome utilise agressivement son cache. Si vous utilisez le bouton d'actualisation, Chrome fera un appel pour presque chaque élément.

0voto

eselk Points 1796

Tout ce qui figure dans l'autre article que vous avez mis en lien comporte un en-tête Cache-Control : max-age=. Avez-vous essayé ? Je ne pense pas que expires et etag soient suffisants, je pense que vous avez besoin du Cache-Control également, mais je ne l'ai pas testé.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X