Tengo dificultades para comprimir correctamente un resultado Json de ASP.NET MVC en IIS 7. He habilitado la compresión estática y dinámica en IIS. Puedo verificar con Fiddler que el texto normal/html y los registros similares están comprimidos. Al ver la solicitud, el encabezado gzip de aceptación de codificación está presente. La respuesta tiene el tipo mimet "application/json", pero no está comprimido.Cómo comprimir un resultado Json de ASP.NET MVC con IIS 7.5
He identificado que el problema parece estar relacionado con el MimeType. Cuando incluyo mimeType="*/*"
, puedo ver que la respuesta está gzip correctamente. ¿Cómo puedo hacer que IIS comprima SIN usar un mimeType comodín? Supongo que este problema tiene algo que ver con la forma en que ASP.NET MVC genera encabezados de tipo de contenido.
El uso de la CPU está muy por debajo del umbral de aceleración dinámica. Cuando examino los registros de seguimiento de IIS, puedo ver que no se comprime debido a que no se encuentra un tipo de mime coincidente.
<httpCompression directory="%SystemDrive%\inetpub\temp\IIS Temporary Compressed Files" noCompressionForProxies="false">
<scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" />
<dynamicTypes>
<add mimeType="text/*" enabled="true" />
<add mimeType="message/*" enabled="true" />
<add mimeType="application/x-javascript" enabled="true" />
<add mimeType="application/json" enabled="true" />
</dynamicTypes>
<staticTypes>
<add mimeType="text/*" enabled="true" />
<add mimeType="message/*" enabled="true" />
<add mimeType="application/x-javascript" enabled="true" />
<add mimeType="application/atom+xml" enabled="true" />
<add mimeType="application/xaml+xml" enabled="true" />
<add mimeType="application/json" enabled="true" />
</staticTypes>
</httpCompression>
No puedo usar un tipo de letra comodín porque me encuentro con un problema extraño con IE8 - parece tener dificultades para descargar un archivo .zip cuando la solicitud se descomprime gráficamente por IIS. Firefox 3.5 no se ve afectado. –