静的な種類 <staticTypes>
- 概要
- 互換性
- セットアップ
- 方法
- 構成
- サンプル コード
※本ページに挿入されている画像をクリックすると、画像全体が別ウィンドウで表示されます。
概要
<httpCompression>
要素の <staticTypes>
要素には、<add>
要素のコレクションが含まれます。これは、IIS 7.0 が静的に圧縮する種類の一覧に一意の MIME の種類を追加します。
注 : IIS 6.0 の HcFileExtensions メタベース プロパティでは、"静的なコンテンツ" として特定のファイル名拡張子を定義していました。IIS 7.0 ではそれとは異なり、<staticTypes>
要素を使用してどの MIME の種類を静的に圧縮するかを指定し、<handlers>
要素のマッピングを使用してどのファイル名拡張子が静的コンテンツまたは動的コンテンツを参照するかを指定します。
互換性
IIS 7.0 | IIS 6.0 | |
---|---|---|
説明 | <httpCompression> の <staticTypes> は IIS 7.0 で新たに導入された要素です。 |
<staticTypes> 要素は、IIS 6.0 の HcFileExtensions メタベース プロパティと似た機能を持ちます。 |
セットアップ
HTTP 圧縮は、通常、IIS 7.0 の既定のインストールに含まれていますが、静的圧縮のみが既定でインストールされます。静的圧縮または動的圧縮をインストールするには、次の手順を実行します。
Windows Server 2008
タスク バーの [スタート] ボタンをクリックし、[管理ツール] をポイントして [サーバー マネージャー] をクリックします。
[サーバー マネージャー] のツリー表示で、[役割] を展開して [Web サーバー (IIS)] をクリックします。
[Web サーバー (IIS)] ウィンドウで、[役割サービス] セクションまでスクロールして [役割サービスの追加] をクリックします。
役割サービスの追加ウィザードの [役割サービスの選択] ページで、動的圧縮をインストールする場合は [動的なコンテンツの圧縮] を、静的圧縮をインストールする場合は [静的なコンテンツの圧縮] を選択して、[次へ] をクリックします。
[インストール オプションの確認] ページで [インストール] をクリックします。
[結果] ページで [閉じる] をクリックします。
Windows Vista
タスク バーの [スタート] ボタンをクリックし、[コントロール パネル] をクリックします。
[コントロール パネル] の [プログラムと機能] をクリックして、[Windows の機能の有効化または無効化] をクリックします。
[Internet Information Services]、[World Wide Web サービス]、[性能機能] の順に展開します。
動的圧縮をインストールする場合は [HTTP 動的圧縮] を、静的圧縮をインストールする場合は [静的なコンテンツの圧縮] を選択します。
[OK] をクリックします。
方法
IIS 7.0 には、静的なコンテンツの種類を設定するためのユーザー インターフェイスはありません。静的なコンテンツの種類をプログラムを使用して設定する方法の例については、このドキュメントの「サンプル コード」セクションを参照してください。
構成
属性
なし。
子要素
add |
オプションの要素。 静的な MIME の種類のコレクションに MIME の種類を追加します。 |
remove |
オプションの要素。 静的な MIME の種類のコレクションから、MIME の種類の参照を 1 つ削除します。 |
clear |
オプションの要素。 静的な MIME の種類のコレクションから、MIME の種類の参照をすべて削除します。 |
構成サンプル
IIS 7.0 の ApplicationHost.config ファイルには、次の既定の <httpCompression>
要素が構成されています。この構成セクションは、<clear>
要素を使用している場合を除き、既定の構成設定を継承します。
<httpCompression
directory="%SystemDrive%\inetpub\temp\IIS Temporary Compressed Files">
<scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" />
<dynamicTypes>
<add mimeType="text/*" enabled="true" />
<add mimeType="message/*" enabled="true" />
<add mimeType="application/javascript" enabled="true" />
<add mimeType="*/*" enabled="false" />
</dynamicTypes>
<staticTypes>
<add mimeType="text/*" enabled="true" />
<add mimeType="message/*" enabled="true" />
<add mimeType="application/javascript" enabled="true" />
<add mimeType="*/*" enabled="false" />
</staticTypes>
</httpCompression>
サンプル コード
次のコード サンプルでは、静的圧縮の種類の一覧に Office 2003 文書の MIME の種類を追加します。
(注 : Office 2007 文書では、組み込み圧縮機能を使用するため、文書を IIS で圧縮する必要はありません。)
AppCmd.exe
appcmd.exe set config -section:system.webServer/httpCompression /+"staticTypes.[mimeType='application/msword',enabled='True']" /commit:apphost
appcmd.exe set config -section:system.webServer/httpCompression /+"staticTypes.[mimeType='application/vnd.ms-powerpoint',enabled='True']" /commit:apphost
appcmd.exe set config -section:system.webServer/httpCompression /+"staticTypes.[mimeType='application/vnd.ms-excel',enabled='True']" /commit:apphost
C#
using System;
using System.Text;
using Microsoft.Web.Administration;
internal static class Sample
{
private static void Main()
{
using (ServerManager serverManager = new ServerManager())
{
Configuration config = serverManager.GetApplicationHostConfiguration();
ConfigurationSection httpCompressionSection = config.GetSection("system.webServer/httpCompression");
ConfigurationElementCollection staticTypesCollection = httpCompressionSection.GetCollection("staticTypes");
ConfigurationElement addElement = staticTypesCollection.CreateElement("add");
addElement["mimeType"] = @"application/msword";
addElement["enabled"] = true;
staticTypesCollection.Add(addElement);
ConfigurationElement addElement1 = staticTypesCollection.CreateElement("add");
addElement1["mimeType"] = @"application/vnd.ms-powerpoint";
addElement1["enabled"] = true;
staticTypesCollection.Add(addElement1);
ConfigurationElement addElement2 = staticTypesCollection.CreateElement("add");
addElement2["mimeType"] = @"application/vnd.ms-excel";
addElement2["enabled"] = true;
staticTypesCollection.Add(addElement2);
serverManager.CommitChanges();
}
}
}
VB.NET
Imports System
Imports System.Text
Imports Microsoft.Web.Administration
Module Sample
Sub Main()
Dim serverManager As ServerManager = New ServerManager
Dim config As Configuration = serverManager.GetApplicationHostConfiguration
Dim httpCompressionSection As ConfigurationSection = config.GetSection("system.webServer/httpCompression")
Dim staticTypesCollection As ConfigurationElementCollection = httpCompressionSection.GetCollection("staticTypes")
Dim addElement As ConfigurationElement = staticTypesCollection.CreateElement("add")
addElement("mimeType") = "application/msword"
addElement("enabled") = True
staticTypesCollection.Add(addElement)
Dim addElement1 As ConfigurationElement = staticTypesCollection.CreateElement("add")
addElement1("mimeType") = "application/vnd.ms-powerpoint"
addElement1("enabled") = True
staticTypesCollection.Add(addElement1)
Dim addElement2 As ConfigurationElement = staticTypesCollection.CreateElement("add")
addElement2("mimeType") = "application/vnd.ms-excel"
addElement2("enabled") = True
staticTypesCollection.Add(addElement2)
serverManager.CommitChanges()
End Sub
End Module
JavaScript
var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";
var httpCompressionSection = adminManager.GetAdminSection("system.webServer/httpCompression", "MACHINE/WEBROOT/APPHOST");
var staticTypesCollection = httpCompressionSection.ChildElements.Item("staticTypes").Collection;
var addElement = staticTypesCollection.CreateNewElement("add");
addElement.Properties.Item("mimeType").Value = "application/msword";
addElement.Properties.Item("enabled").Value = true;
staticTypesCollection.AddElement(addElement);
var addElement1 = staticTypesCollection.CreateNewElement("add");
addElement1.Properties.Item("mimeType").Value = "application/vnd.ms-powerpoint";
addElement1.Properties.Item("enabled").Value = true;
staticTypesCollection.AddElement(addElement1);
var addElement2 = staticTypesCollection.CreateNewElement("add");
addElement2.Properties.Item("mimeType").Value = "application/vnd.ms-excel";
addElement2.Properties.Item("enabled").Value = true;
staticTypesCollection.AddElement(addElement2);
adminManager.CommitChanges();
VBScript
Set adminManager = WScript.CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"
Set httpCompressionSection = adminManager.GetAdminSection("system.webServer/httpCompression", "MACHINE/WEBROOT/APPHOST")
Set staticTypesCollection = httpCompressionSection.ChildElements.Item("staticTypes").Collection
Set addElement = staticTypesCollection.CreateNewElement("add")
addElement.Properties.Item("mimeType").Value = "application/msword"
addElement.Properties.Item("enabled").Value = True
staticTypesCollection.AddElement(addElement)
Set addElement1 = staticTypesCollection.CreateNewElement("add")
addElement1.Properties.Item("mimeType").Value = "application/vnd.ms-powerpoint"
addElement1.Properties.Item("enabled").Value = True
staticTypesCollection.AddElement(addElement1)
Set addElement2 = staticTypesCollection.CreateNewElement("add")
addElement2.Properties.Item("mimeType").Value = "application/vnd.ms-excel"
addElement2.Properties.Item("enabled").Value = True
staticTypesCollection.AddElement(addElement2)
adminManager.CommitChanges()