Estoy tratando de averiguar si puedo obtener navegadores para almacenar en caché las imágenes con direcciones URL firmadas.Almacenamiento en caché de imágenes con cadenas de consulta diferentes (URL firmadas S3)
Lo que quiero es generar una nueva url firmada para cada solicitud (misma imagen, pero con una firma actualizada), pero que el navegador no vuelva a descargarla cada vez.
Entonces, suponiendo que los encabezados relacionados con el caché estén configurados correctamente, y que toda la URL sea la misma excepto la cadena de consulta, ¿hay alguna forma de hacer que el navegador lo guarde en caché?
las direcciones URL se vería algo como:
http://example.s3.amazonaws.com/magic.jpg?WSAccessKeyId=stuff&Signature=stuff&Expires=1276297463
http://example.s3.amazonaws.com/magic.jpg?WSAccessKeyId=stuff&Signature=stuff&Expires=1276297500
Tenemos la intención de establecer la dirección de etiquetas a ser una suma md5, también lo hará por lo menos averiguar que es la misma imagen en ese punto?
Mi otra opción es hacer un seguimiento de la última vez que se dio una url, y luego comenzar a entregar nuevas poco antes de que expiren las anteriores, pero preferiría no tratar con la información de la sesión.
¿Sabes si al menos comprobará la etiqueta electrónica y no volverá a descargarla? –
El encabezado ETag solo es enviado por el navegador al servidor cuando encuentra el archivo en su caché (y si el archivo original tenía un valor ETag). Entonces, si no puede encontrarlo en su caché (lo cual no ocurrirá si la URL ha cambiado), no hay un valor de ETag para enviar en la solicitud. –
La regla de reescritura de URL volvería a inutilizar la firma S3, ya que el servidor web proporcionaría automáticamente un enlace no caducado. Luego, también puede marcar los archivos en S3 como "públicos". (Entonces, no se requiere firma para acceder a los archivos) – Tarnschaf