2012-04-13 26 views
3

圧縮が有効になっているIIS 7.5で動作するMVC3サイトがあります。IIS 7.5/MVCでアプリケーション/ xhtml + xmlコンテンツタイプのGZip圧縮が機能しない

GZip圧縮は、コンテンツタイプをapplication/xhtml+xml(これはさまざまな理由で必要です)のコントローラ(Response.ContentType = "application/xhtml+xml";)に手動で変更する少数のページを除き、サイトのすべてのページで機能しています。

このコンテンツタイプでは、GZipが動作しなくなることはありますか?

答えて

3

application/xhtml+xmlは、IIS圧縮が圧縮することがわかっている組み込みのMIMEタイプの1つではありません。このMIMEタイプの圧縮を明示的に有効にする必要があります。

静的なファイルでも動的に生成されたでも、圧縮を有効にしたいとします。これを行うには、マシンレベルコンフィグのsystem.webServer/httpCompressionstaticTypesdynamicTypesセクションにmime-typeを追加する必要があります。展開スクリプトでこれを行うには単純な方法の一つは、ちょうどそうようappcmd.exeを使用することです:静的なコンテンツを圧縮するためのサポートを追加する

動的なコンテンツを圧縮するためのサポートを追加する

appcmd.exe set config -section:system.webServer/httpCompression /+"staticTypes.[mimeType='application/xhtml%%2bxml',enabled='True']" /commit:apphost 

appcmd.exe set config -section:system.webServer/httpCompression /+"dynamicTypes.[mimeType='application/xhtml%%2bxml',enabled='True']" /commit:apphost 

明らかに、圧縮する必要のある他のコンテンツタイプにも同じアプローチを使用できます。

関連する問題