net microsoft cache asp asp.net asp.net-mvc http-headers cache-control

asp.net - microsoft - cómo configurar tanto httpexpires como los encabezados de cachecontrol



microsoft caching (2)

Esta página de IIS Client Cache indica que "mientras que las configuraciones" Expira "y" max-age "son algo análogas, la directiva" max-age "tiene prioridad sobre" Expira ". Sin embargo, IIS genera errores HTTP 500 cuando se utilizaba una entrada clientCache de "max-age" en paralelo con una entrada de caché de cliente "Caduca".

El "Vencimiento" y el "máximo de edad" son mutuamente excluyentes cuando se ajusta el "Establecer encabezados comunes" en IIS. Puedes usar uno u otro, pero no ambos.

Se pueden aplicar otras directivas de caché a subcarpetas o archivos específicos en Web.config. Consulte esta página de stackoverflow para configurar el contenido del caché en IIS7.

Quiero configurar cachecontrol y cachecontrol y httpExpires encabezados en web.config siguiendo la respuesta a esa pregunta ¿Cuál es la diferencia Expires y Cache-control: max-age?

<system.webServer> <staticContent> <clientCache cacheControlCustom="public" cacheControlMaxAge="12:00:00" cacheControlMode="UseMaxAge" /> <clientCache cacheControlCustom="public" httpExpires="Tue, 19 Jan 2038 03:14:07 GMT" cacheControlMode="UseExpires" /> </staticContent> </system.webServer>

Pero por alguna razón, las imágenes no estaban disponibles cuando lo hago.

Failed to load resource: the server responded with a status of 500 (Internal Server Error) en cada carga de imagen (puedo ver los errores en la browser dev tools console ).

Supongo que lo configuro mal?

Funcionaría si comento alguna sección de clientCache al dejar solo uno

¿Cómo arreglar eso?

ACTUALIZADO: Acabo de formular una pregunta más relacionada sobre cómo configurar tanto httpexpires como los encabezados de cachecontrol web.cofig :


<staticContent> <clientCache cacheControlCustom="public;max-age" cacheControlMode="UseMaxAge" cacheControlMaxAge="10.00:00:00" /> </staticContent> <urlCompression dynamicCompressionBeforeCache="true" />

Esto funcionó bien para almacenar en caché una solicitud por 10 días.