¿Cómo puedo obtener el contenido estático en Apache para que {almacenado en caché por el navegador} y no {verificado por frescura {con cada solicitud}}?Caché de imágenes del sitio web con Apache
Estoy trabajando en un sitio web alojado en el servidor web Apache. Recientemente, estaba probando algo con encabezados (Content-Type para diferentes tipos de contenido) y vi muchas solicitudes condicionales de imágenes. Ejemplo:
200 /index.php?page=1234&action=list
304 /favicon.ico
304 /img/logo.png
304 /img/arrow.png
(etc.)
Aunque los archivos de imagen son de contenido estático y se almacenan en caché por el navegador, cada vez que un usuario abre una página que enlaza a ellos, se les solicita de forma condicional, a los que mandan "304 Not Modified". Eso es bueno (menos datos transferidos), pero significa más de 20 solicitudes con cada carga de página (carga de página más larga debido a todos los viajes de ida y vuelta, incluso con Keep-Alive y pipelining habilitados).
¿Cómo le digo al navegador que conserve el archivo existente y no busque una versión más nueva?
EDIT: el método mod_expires funciona, incluso con el favicon.
he especificado mi favicon tener un tipo MIME "image/x-icon" - y me parece que no puede conseguir Apache para establecer cabeceras Expira en él. ¿Alguna idea de por qué es esto? ¿NECESITO usar image/vnd.microsoft.icon? – Tom
@Tom: "El tipo oficial MIME registrado en IANA para archivos .ICO es image/vnd.microsoft.icon". (Wikipedia) Entonces, NO NECESITA usarlo, pero es del tipo MIME correcto - ¿enviaría "image/x-jpg" con imágenes JPEG en lugar de la "imagen/jpeg" estándar? ¿Existe alguna razón técnica por la que no desee devolver el tipo MIME correcto? – Piskvor
@Tom: en cuanto a la primera pregunta, al servidor no le debe importar cuál es el tipo MIME, siempre que lo sepa. ¿Tiene AddType * antes * ExpiresByType para este tipo MIME? – Piskvor