La razón por la que solo comprime su archivo ASPX es porque el código que ha escrito solo está incrustado en el archivo ASPX. Un archivo ASPX es una solicitud separada de cualquier contenido vinculado que contiene. Así que si usted tiene una página ASPX que contiene:
<img src="www.example.com\exampleimg.jpg" alt="example" />
esto equivaldría a 2 solicitudes (búsquedas de DNS a un lado) de su navegador para los recursos:
- para la página aspx y
- de la imagen contenida en la página aspx.
Cada solicitud tiene su propia respuesta steam. El código que ha publicado se adjunta únicamente a la secuencia de respuesta ASPX, por lo que solo se está comprimiendo su página ASPX.Las líneas 1 & 2 de su código publicado básicamente toman el flujo de respuesta normal de la página e inyectan un código de "intermediario" que en este caso come y comprime el flujo de salida normal con un flujo GZip y lo envía por el cable.
Líneas 3 & 4 están configurando los encabezados de respuesta. Todas las solicitudes y respuestas http tienen encabezados que se envían antes del contenido. Estos configuran la solicitud/respuesta para que el servidor y el cliente sepan qué se envía y cómo.
En este caso, la línea 3 informa al navegador del cliente que el flujo de respuesta se comprime mediante gzip y, por lo tanto, debe ser descomprimido por el navegador del cliente antes de visualizarse.
Y la línea 4 simplemente está activando el encabezado Aceptar codificación de la respuesta. Esto, de otro modo, habría estado ausente de la respuesta.
Hay módulos enchufables que puede escribir/obtener que le permiten comprimir una multitida de otro tipo MIME como * .js y * .css, pero es mejor que simplemente utilice la funcionalidad de compresión integrada de IIS.
No has dicho, que Verson de IIS que está utilizando, pero si se tratara de IIS 7.0, se requeriría que incluya algo como lo siguiente en la sección <system.webserver>
de que el archivo web.config:
<httpCompression>
<scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" />
<staticTypes>
<add mimeType="text/*" enabled="true" />
</staticTypes>
</httpCompression>
<urlCompression doStaticCompression="true" />
..
Richard
Hola @Ben, ¿Puedes decirme cómo comprimir mis archivos usando IIS? ¿Qué ajustes debo realizar? Aunque no tengo acceso a las configuraciones de IIS, pero me ' Intentare hacerlo ¿Dime cómo comprimir archivos usando IIS? ¡Gracias! – Prashant
http://stackoverflow.com/a/6992948/8479 detalla el simple cambio en web.config que se necesita para IIS 7 o superior. – Rory