2010-12-15 6 views
2

J'ai des problèmes avec quelques images sur un site que je suis en train de développer. Certaines images sont mises en cache correctement et leurs en-têtes semblent corrects (forts etags, corrigés en dernier). Mais d'autres images ont des étiquettes faibles (précédées de W /) et un en-tête modifié en dernier qui est toujours égal à l'heure actuelle. Est-ce que quelqu'un sait comment je peux résoudre ce problème? J'ai regardé un peu autour de moi et je n'arrive pas à trouver quelque chose qui fonctionne. L'image qui n'est pas mise en cache est une image d'arrière-plan et provoque un flash d'arrière-plan sur chaque rechargement de page, ce qui est gênant.Mise en cache, étags faibles et problèmes les plus récents

têtes:

Accept-Ranges:bytes 
Connection:Keep-Alive 
Content-Length:6879 
Content-Type:image/jpeg 
Date:Wed, 15 Dec 2010 07:41:44 GMT 
Etag:W/"4e863ea-1adf-49772cd85b340" 
Keep-Alive:timeout=15, max=98 
Last-Modified:Wed, 15 Dec 2010 07:41:44 GMT 
Server:Apache/2.2.11 (Ubuntu) PHP/5.2.6-3ubuntu4.6 with Suhosin-Patch 

Nous vous remercions d'avance pour toute aide. Je ne suis pas un expert dans ce genre de choses, alors je m'excuse si quelque chose me manque.

Répondre

1

Si vous voulez vous assurer que vos images sont mises en cache, vous ne pouvez pas compter sur les en-têtes de validation (last-modified, etag). Pour assurer la mise en cache, vous devez utiliser Expires ou Cache-control. La validation est utilisée uniquement après que le mécanisme d'expiration du cache indique que le contenu est périmé. Si vous n'utilisez pas les en-têtes Expires ou Cache-control, la fraîcheur du contenu n'est pas définie et dépend uniquement de l'implémentation spécifique du navigateur, dans votre cas, il peut se comporter de façon inattendue.

0

Je ne suis pas sûr de ce qui a changé, mais il semble que le problème a disparu.

têtes:

Accept-Ranges:bytes 
Connection:Keep-Alive 
Content-Length:6879 
Content-Type:image/jpeg 
Date:Wed, 15 Dec 2010 16:46:14 GMT 
Etag:"4e863ea-1adf-49772cd85b340" 
Keep-Alive:timeout=15, max=99 
Last-Modified:Wed, 15 Dec 2010 13:20:37 GMT 
Server:Apache/2.2.11 (Ubuntu) PHP/5.2.6-3ubuntu4.6 with Suhosin-Patch 
+1

C'était probablement dû au fait que votre etag est passé de faible à fort. –

+0

@JustinY, j'ai le même problème maintenant. Un de mes deux scripts chargeait des images statiques avec un fort etag, et un autre avec un faible. Je ne peux pas comprendre la situation puisque les deux scripts sont presque identiques. Pourriez-vous m'aider avec un conseil? –

+0

Désolé, le problème est résolu. =) C'était le problème du fuseau horaire. –

Questions connexes