私はこの質問が何度も聞かれたことを知っています、しかしそれらのほとんどは2009- 2010年にありました。
私が取り組んでいたプロジェクトがそれらを削除したことはかなり前のことですが、現時点ではそれらを削除する方法を見つけることができません。
では、この分野で何か進歩はありましたか? MicrosoftがIISを作成して、これらのヘッダーを簡単に構成できないようにしたのはおかしなことに思えます。
現在試しています:
削除できるISAPIフィルターがあると聞きましたが、どこにも見つかりません。最初から作成した経験はありませんが、最終的にはそれを行う唯一の方法になる可能性があります。
だから、私がすべてのEtagsを削除したい理由がいくつかあります。クライアントにすべて(期限切れと最終変更)をキャッシュさせるので、静的ファイルがサーバーから取得されると、期限切れになるまでサーバーに再度クエリを実行する必要はありません。 Etagsを使用する場合と同様に、タグがまだ一致するかどうかを確認するために、ファイルごとにサーバーにリクエストを送信する必要があります。したがって、クライアントキャッシュを使用すると、必要なコンテンツのみを要求できます。
また、バージョン管理システムを導入しているため、変更が発生すると、静的コンテンツはmy.js?12344ではなくmy.js?12345として参照されます。とにかく重要なのは、現在、Etagsを削除すると、現在のプロジェクトのボトルネックの1つが大幅に改善されると信じていることです。
IIS Rewrite Module 2. を使用してETagを削除できます。次の書き換えルールで実行できます。
<rewrite>
<outboundRules>
<rule name="Remove ETag">
<match serverVariable="RESPONSE_ETag" pattern=".+" />
<action type="Rewrite" value="" />
</rule>
</outboundRules>
</rewrite>
ルール構成のサンプル画像はIIS私のブログのマネージャー にあります。
同じ解決策を探してこの答えに出くわしたが、IIS8またはIIS 8.5)の場合は、これが私が思いついたものです。 blogs.iis.netのこの投稿 私を正しい方向に向けてくれてありがとう。
参照: clientCache IISドキュメントWebサイト。
Web.configに、次を追加します。
<configuration>
...
<system.webServer>
...
<staticContent>
<clientCache setEtag="false"/>
</staticContent>
...
</system.webServer>
...
</configuration>