HTTP.sys がコンテンツをキャッシュしないインスタンス

この記事では、HTTP.sys ドライバーがコンテンツをキャッシュしないインスタンスについて説明します。

元の製品バージョン: インターネット インフォメーション サービス 8.0
元の KB 番号: 817445

HTTP.sys がキャッシュされない状況

応答キャッシュは HTTP.sys 、要求ヘッダーに適切なフラグを持つ要求をキャッシュします。 このキャッシュは要求ごとに無効になります。 ただし、次の条件の 1 つ以上が true の場合、 HTTP.sys 要求応答はキャッシュされません。

  • 要求は匿名要求ではありません。

  • 要求には認証が必要です。 (たとえば、要求にはヘッダーが Authorization: 含まれています)。

  • Web サイトはフッターを使用するように構成されています。

  • 動的圧縮が有効になっており、応答に使用されます。

    注:

    静的圧縮はキャッシュと共に HTTP.sys 使用できます。

  • 静的ファイルは汎用名前付け規則 (UNC) ファイルであり、 DoDirMonitoringForUnc レジストリ キーは有効になっていません。

    注:

    レジストリ プロパティ (DWORD 値) を DoDirMonitoringForUnc 使用して、静的ファイル キャッシュを変更通知キャッシュに戻すことができます。 これは次のように設定されます。 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Inetinfo\Parameters
    既定値は 0 であるか、有効になっていません。 変更通知に基づいて静的コンテンツのキャッシュを有効にするには、1 に設定できます。

  • 要求にはクエリ文字列が含まれています。

  • キャッシュが無効になっています。 (つまり、 MD_VR_NO_CACHE メタベース プロパティは 1 と等しくなります)。

    注:

    メタベース プロパティの MD_VR_NO_CACHE 詳細については、製品ドキュメントを参照してください。 このドキュメントを表示するには、「 DisableStaticFileCache」を参照してください。

  • 要求にはエンティティ本文があります。

  • URL に対して証明書マッピングが有効になっています。

  • Web サイトに対してカスタム ログが有効になっています。

  • 要求 HTTP バージョンが 1.1 または 1.0 ではありません。

  • 要求に Translate: f ヘッダーが含まれています。

  • Expect:正確に含100 continueまれていないヘッダーが存在します。

  • 要求には、ヘッダーまたはヘッダーがIf-Range:Range:含まれています。

    注:

    HTTP.sys は、応答全体のみを処理します。 HTTP.sys は、範囲指定された応答の送信を試みません。

  • 応答は複数 SendResponse の呼び出しにまたがる SendResponseEntityBody

    注:

    キャッシュ可能な応答は、1 つのベクター化された呼び出しでダウンする SendResponse 必要があります。

  • 合計応答サイズは、応答ごとの最大サイズを超えています。 最大値はレジストリ キーによって UriMaxUriBytes 制御され、既定値は 256 KB です。

  • 応答ヘッダー のサイズが、応答ごとの最大ヘッダー サイズを超えています。 既定値は 1,024 バイトです。

  • キャッシュは既にいっぱいです。 既定のサイズは、コンピューター内の物理メモリに比例します。

  • 応答の長さは 0 です。

  • キャッシュ対応ではないインターネット サーバー アプリケーション プログラム インターフェイス (ISAPI) フィルターがインストールされています。

    注:

    既定では、ISAPI フィルターはキャッシュ対応ではありません。 フィルターをキャッシュ対応 FilterEnableCache にするには、メタベース プロパティを設定する必要があります。 IIS の既定のインストールのすべてのフィルターはキャッシュ対応です。 これには、FrontPage と ASP.NET が含まれます。
    メタベース プロパティのFilterEnableCache詳細については、「Windows 10デプロイの新機能」を参照してください。

  • 静的ファイルには、既定のドキュメントとしてアクセスされます。 (たとえば、ルート ディレクトリに Default.htm が存在します)。特定のファイルに名前 (http://contoso.com/default.htm/) でアクセスすると、 HTTP.sys はファイルをキャッシュします。 ルート フォルダー (http://contoso.com/) を要求して Web サイトにアクセスすると、キャッシュされていない応答が生成されます。

    注:

    [既定のドキュメント] ボックスの一覧に表示されている最初のページにアクセスできない場合、IIS は既定のドキュメント の一覧の 2 番目のページを提供しようとします。 この状況では、その静的ページはキャッシュから提供されません。