Imagenes y cache del navegador


#1

Hola, saludos al grupo.

Creo que este no es estrictamente un problema de RoR , pero de todos
modos creo que algo tiene que ver.

Tengo un problema con las imagenes en mi aplicacion RoR.

En el navegador firefox el comportamiento es el esperado y el deseado,
las imagenes tardan un poco en cargar la primera vez pero luego son
cacheadas y no son descargadas del sevidor nuevamente.

Sin embargo con IE(el 7 al menos, no he probado con el 6) las imagenes
no se cachean, se descargan del servidor en cada peticion, lo cual es
bastante molesto(el menu tarda en dibujarse en cada peticion por ej.).

He de decir que las imagenes las genero todas con image_tag.
Estoy utilizando mod_passenger y apache y tengo un proxypass para las
imagenes, es decir las imagenes(y assets) son servidas por apache.

A que puede ser debido y como puedo solucionarlo?.

Gracias , Alfredo.


#2

He de decir que las imagenes las genero todas con image_tag.
Estoy utilizando mod_passenger y apache y tengo un proxypass para las
imagenes, es decir las imagenes(y assets) son servidas por apache.

A que puede ser debido y como puedo solucionarlo?.

Prueba a enviar cabeceras expires para tus imágenes. Puedes configurarlo
directamente en apache. El browser, cuando vea que la fecha todavía no
ha expirado, no vuelve a pedir la imagen. En este caso es vital que uses
siempre el “image_tag” para que la imagen lleve un timestamp y si cambia
se vuelva a descargar. Si pones expires para todas las imágenes y no
usas timestamp, no tienes forma de expirar una imagen en cliente.

Un nivel más es configurar los ETags, que además no reenvían la imagen
aunque haya expirado si no se ha modificado.

suerte,


javier ramírez

…i do ruby on rails development in madrid, spain, at
http://www.aspgems.com
…you can find out more about me on http://formatinternet.wordpress.com
and http://workingwithrails.com/person/5987-javier-ramirez