2010-02-04 17 views
7

He configurado IIS7 para gzip contenido estático.En IIS7, los archivos comprimidos no se quedan así

http://www.coderjournal.com/2008/04/iis-7-compress-javascript-gzip/

Sin embargo, los archivos no se "quedan" gzip.

Aquí es mi caso de uso:

  1. Solicitud archivo test.css. No tiene gzip.
  2. Solicítalo nuevamente en unos segundos. Es es gzipped.
  3. Espere 5 minutos.
  4. Solicite el archivo test.css nuevamente. No tiene gzip.

Esto no tiene sentido, ¿no debería entregarse la versión comprimida de un archivo estático en todas las solicitudes posteriores, si el original no cambiaba?

Nota: Estoy usando Firefox y Firebug para verificar el contenido comprimido al comprimir el encabezado Content-Encoding.

Respuesta

9

De acuerdo con este artículo:

Changes to compression in IIS7 por Kanwaljeet Singla

En IIS7, el contenido se comprime en función de su frecuencia, que se puede configurar como éste golpeó:

<system.webServer> 
    <serverRuntime enabled="true" 
    frequentHitThreshold="5" 
    frequentHitTimePeriod="00:00:20" /> 
</system.webServer> 

Tal vez ¿No estás llegando a estos umbrales?

+0

Eso podría estar relacionado, pero ¿por qué desaparece el archivo comprimido gzip después de 5 minutos? – frankadelic

+0

frankadelic: He establecido lo mismo en mi configuración web. pero gzip se deshabilita después de 2 o 3 solicitudes. –

1

Dependiendo de lo mal que necesite optimizar el rendimiento de su sitio, quizás desee utilizar Combres.

La gran ventaja es que solo minimiza y descomprime los archivos javascript, pero también combina todos los archivos en uno, por lo que solo hay una solicitud HTTP para todos sus archivos javascript. Además, también hace uso del almacenamiento en caché del lado del cliente, de modo que el archivo solo se descarga cuando es necesario. Además, también hace todo esto para los archivos CSS.

Es bastante fácil de configurar, por lo tanto, en lugar de intentar arreglarlo, es mejor que dediques tu tiempo a obtener Combres.

+0

¿Se puede usar Can Combres sin usar la sintaxis <%= %> en páginas ASPX? Para mi solución, tengo páginas con CompilationMode = "Never", por lo que estas etiquetas no funcionarán para mí. – frankadelic

+0

No, esto no funcionaría. En este caso, probablemente iré para minificar/descomprimir/empaquetar todos los recursos en un solo archivo y vincularlo estáticamente. –

+0

Combres se ve bien ...tal vez una versión futura sea compatible con la sintaxis de Expression Builder. – frankadelic

-1

Le sugiero que preste atención en otro software-Helicon Ape http://www.helicontech.com/ape Es gratis para 3 sitios web e incluye soluciones de compresión/almacenamiento en caché que funcionan sin problemas. Sólo en una cadena de configuración obtendrá gzip y caché habilitada:

SetEnvIfNoCase mime text/.* gzip=9 cache-enable=mem 

La regla anterior dice Ape para comprimir texto/* tipos MIME con el nivel más alto, así como la memoria caché en la memoria. Solo inténtalo.

Cuestiones relacionadas