2011-07-14 21 views
6

archivo favicon.ico de nuestro sitio no ha cambiado en años - y no va a cambiar a corto plazo - así que me gustaría configurar IIS para servir con un futuro lejano cache encabezado de caducidad. El resto del contenido de la carpeta raíz de mi sitio web es páginas dinámicas que no deben ser almacenados en la caché - pero por lo que puedo decir, IIS sólo permite establecer la caducidad del contenido de caché en función de cada carpeta - ¿Hay tan forma de establecer un encabezado de caché para favicon.ico sin afectar el resto del contenido en el directorio de inicio también?¿Cómo puedo hacer que IIS publique encabezados de caché para mi favicon.ico?

Respuesta

9

Sip: profundice en el archivo.

En el Administrador de IIS (en IIS6), navegue hasta el archivo, haga clic con el botón derecho, propiedades, pestaña Encabezados HTTP, marque Habilitar caducidad del contenido; fiesta con las otras configuraciones.

Felicitaciones a Dylan (abajo) por las instrucciones de IIS7 y este fragmento.

Esto crea la siguiente sección en web.config, por lo que probablemente pueda lograr lo mismo simplemente editando el archivo directamente.

<configuration> 
    <location path="favicon.ico"> 
    <system.webServer> 
     <staticContent> 
     <clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="90.00:00:00" /> 
     </staticContent> 
    </system.webServer> 
    </location> 
</configuration> 
+1

Impresionante. Un punto: no pude hacer clic derecho en el archivo y ver Propiedades, pero después de resaltarlo en la Vista de contenido, apareció favicon.ico en el árbol de navegación de la izquierda y luego pude resaltarlo y hacer clic en "HTTP". Icono de "Encabezados de respuesta" como puedo en las carpetas comunes. En IIS7 la configuración se almacena en web.config así que he añadido el fragmento de XML que en realidad creada por este proceso para la respuesta. –

+0

Entonces es una versión. Mi servidor "correcto" es IIS6, así que allí verifiqué mi enfoque. Mi computadora portátil Win7 tiene IIS7 y su enfoque funcionó. Encontré un ligero giro extra: después de resaltar en la Vista de contenido y de encontrar que no había propiedades, vi el mensaje de alerta que decía que tenía que moverme a la Vista de características. Una vez allí, como tú, estaba en la vista de árbol de la izquierda. Respuesta editada – RichardHowells

+8

Actualizo mi archivo web.config con este fragmento y al mirar a YSlow, sigue apareciendo como (no caduca). Estoy usando IIS 7. –

Cuestiones relacionadas