J'ai des difficultés à faire en sorte que IIS 7 compresse correctement un résultat Json à partir d'ASP.NET MVC. J'ai activé la compression statique et dynamique dans IIS. Je peux vérifier avec Fiddler que les enregistrements normaux de type text/html et similaires sont compressés. En regardant la requête, l'en-tête accept-encoding gzip est présent. La réponse a le mimetype "application/json", mais n'est pas compressée.
J'ai identifié que le problème semble être lié au MimeType. Lorsque j'inclus mimeType="*/*"
Je peux voir que la réponse est correctement gzippée. Comment puis-je faire en sorte que IIS compresse SANS utiliser de joker mimeType ? Je suppose que ce problème a quelque chose à voir avec la façon dont ASP.NET MVC génère les en-têtes de type de contenu.
L'utilisation du processeur est bien en dessous du seuil d'étranglement dynamique. Lorsque j'examine les journaux de suivi de IIS, je constate que la compression échoue parce qu'elle ne trouve pas de type mime correspondant.
<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>
1 votes
Je ne peux pas utiliser un mimetype joker car je rencontre un problème étrange avec IE8 - il semble avoir des difficultés à télécharger un fichier .zip lorsque la demande est encore compressée par IIS. Firefox 3.5 n'est pas affecté.