IIS の「静的コンテンツ圧縮」と「動的コンテンツ圧縮」の違い - IIS

IIS の「静的コンテンツ圧縮」と「動的コンテンツ圧縮」の違いを紹介します。

静的コンテンツ圧縮

静的なファイルで、一定のアクセス頻度以上のファイルを圧縮します。
圧縮対象のファイルにはサイズの指定があり、指定したサイズより大きいファイルが圧縮されます。
また、圧縮されたファイルは、以下のディレクトリに配置されます。
%SystemDrive%\inetpub\temp\IIS Temporary Compressed Files

デフォルトの設定では以下のディレクトリになります。
C:\inetpub\temp\IIS Temporary Compressed Files

圧縮されたファイルが配置されるため、アクセスのたびにレスポンスを圧縮する動作ではないため、WebサーバーのCPU負荷は高くなりにくいです。

圧縮に関する設定は、インターネット インフォメーションサービス (IIS) マネージャーを開き、左側のツリービューでサーバーのノードを選択します。 中央のエリアに設定項目が表示されますので[圧縮]の項目をダブルクリックします。


圧縮の設定画面が表示されます。[静的な圧縮]のセクションで圧縮に関する設定ができます。デフォルトでは、2,700バイト以上のファイルを 圧縮する設定になっています。また圧縮後のキャッシュが配置されるディレクトリは、%SystemDrive%\inetpub\temp\IIS Temporary Compressed Filesとなっています。


アクセス頻度の設定は system.WebSrver タグに frequentHitThreshold frequentHitTimePeriod を記述して設定できます。
はじめに次のコマンドを実行してロックを解除する必要があります。
C:\Windows\System32\inetsrv\appcmd unlock config -section:system.webServer/serverRuntime
次にWeb.Config または、 C:\Windows\System32\inetsrv\config\applicationHost.configsystem.webServer タグに記述を追加します。
<location path="Default Web Site">
   <system.webServer>
      <serverRuntime enabled="true"
         frequentHitThreshold="1"
         frequentHitTimePeriod="00:00:20" />
   </system.webServer>
</location>
上記の設定では、20秒間に1度アクセスがあると、ファイルを圧縮対象として処理します。

動的コンテンツ圧縮

静的なファイルだけではなく、ASP.NETアプリケーションやISAPI、CGIなどのプログラムからのレスポンスも圧縮できる機能です。
静的なファイル圧縮の場合は、あらかじめ、圧縮されたファイルを格納しておけばよいですが、動的コンテンツの場合はレスポンスごとに毎回圧縮処理が必要になるため、 WebサーバーのCPU負荷は高くなります。

動的コンテンツの圧縮に関する設定は、構成エディターで変更できます。
インターネット インフォメーションサービス (IIS) マネージャーを開き、左側のツリービューでサーバーのノードを選択します。 中央のエリアの機能ビューの[構成エディター]の項目をダブルクリックします。


[構成エディター]の画面が表示されます。


中央のエリアの[セクション]のコンボボックスをクリックします。ドロップダウンリストが表示されます。リストの [system.webServer]ノードの[httpCompression]のノードをクリックして選択します。


選択された、[httpCompression]の構成画面が表示されます。


主要な設定項目に以下があります。
設定項目意味初期値
dynamicCompressionEnableCPUUsage この項目設定された閾値を下回ると、IISが動的コンテンツの圧縮をします。この値よりCPU負荷が高い場合にはコンテンツは圧縮されません。90
dynamicCompressionDisableCPUUsage この項目で設定された閾値を上回ると、IISが動的コンテンツの圧縮をしなくなります。50
dynamicTypes 圧縮をする対象のMIMEタイプです。text/*, message/*, application/x-javascript, application/javascript
このページのキーワード
  • IIS 静的コンテンツ圧縮 動的コンテンツ圧縮 違い
  • IIS 静的コンテンツ圧縮
  • IIS 動的コンテンツ圧縮
  • IIS 静的コンテンツ圧縮 動的コンテンツ圧縮
著者
iPentec.com の代表。ハードウェア、サーバー投資、管理などを担当。
Office 365やデータベースの記事なども担当。
最終更新日: 2021-10-30
作成日: 2021-08-31
iPentec all rights reserverd.