¿Cómo configuro la capacidad de almacenamiento de archivos estáticos en IIS?
-
08-07-2019 - |
Pregunta
Tengo algunas imágenes estáticas en una carpeta en mi sitio web basado en IIS 6 que deseo descargar lo menos posible (para preservar el ancho de banda). He configurado la caducidad del contenido para que caduque después de 30 días. ¿Hay algo más que pueda hacer en IIS para tratar de maximizar el almacenamiento en caché mediante navegadores, proxy y cachés de puerta de enlace?
¿Como agregar un encabezado Cache-Control? ¿Algo más?
Solución
http://www.galcho.com/Blog/post/2008/02/27/IIS7-How-to-set-cache-control-for-static-content.aspx
Esta es una publicación de blog que cubre lo siguiente:
- Permitir anular la configuración de contenido estático
- establezca la configuración de caché utilizando los siguientes comandos
- Guardar en caché en el cliente
Otros consejos
Aquí está mi respuesta a esta pregunta: " Caduca " en el encabezado http para contenido estático? cómo hacerlo
@ECHO OFF
REM ---------------------------------------------------------------------------
REM Caching - sets the caching on static files in a web site
REM syntax
REM Caching.CMD 1 d:\sites\MySite\WWWRoot\*.CSS
REM
REM %1 is the WebSite ID
REM %2 is the path & Wildcard - for example, d:\sites\MySite\WWWRoot\*.CSS
REM _adsutil is the path to ADSUtil.VBS
REM ---------------------------------------------------------------------------
SETLOCAL
REM *******
REM SET THIS TO POINT TO adsutil.vbs - TYPICALLY c:\inetpub\adminscripts\adsutil.vbs
REM *******
SET _adsutil=D:\Apps\Scripts\adsutil.vbs
FOR %%i IN (%2) DO (
ECHO Setting Caching on %%~ni%%~xi
CSCRIPT %_adsutil% CREATE W3SVC/%1/root/%%~ni%%~xi "IIsWebFile"
CSCRIPT %_adsutil% SET W3SVC/%1/root/%%~ni%%~xi/HttpExpires "D, 0x69780"
ECHO.
)
Que establece el valor de almacenamiento en caché para cada archivo CSS en una raíz web a 5 días, luego ejecútelo así:
Caching.CMD 1 \site\wwwroot\*.css
Caching.CMD 1 \site\wwwroot\*.js
Caching.CMD 1 \site\wwwroot\*.html
Caching.CMD 1 \site\wwwroot\*.htm
Caching.CMD 1 \site\wwwroot\*.gif
Caching.CMD 1 \site\wwwroot\*.jpg
Un poco doloroso, pero viable.
Por cierto - para obtener el valor de HttpExpires, establezca el valor en la GUI, luego ejecute
AdsUtil.vbs ENUM W3SVC/1/root/File.txt
para obtener el valor real que necesita