5

かなり大量のIIS7.0サイト(1日あたり約100万件のリクエスト)があり、その多くはImages / CSS/JSです。

これを減らす簡単な方法として、共通のhttp応答ヘッダーを設定して、将来的にWebコンテンツを一定の日付で期限切れにすることを検討しており、これによってどのような欠点が生じる可能性があるのか​​疑問に思っています。

これを設定した結果のweb.configの変更を見ると、次のように追加されます。

<staticContent>
    <clientCache cacheControlMode="UseExpires" cacheControlMaxAge="1.00:00:00" httpExpires="Thu, 01 Oct 2020 00:00:00 GMT" />
</staticContent>

私が心配しているのは、これを設定した後でCSS / JS / Imagesのいずれかを変更したい場合、クライアントは変更を取得せず、画像はおそらく変更されないでしょうが、CSS/JSは確かに変更を取得します。これは、画像のみを含むフォルダーに対してのみこれを設定する必要があるという意味ですか?それとも、CSS / JSにバージョン管理されたURLを導入する必要があるということですか?

4

1 に答える 1

7

常に静的コンテンツ (画像、CSS、JS) をキャッシュする必要があります。

キャッシュされている場合でも、ほとんどのブラウザーはサーバーに新しいバージョンが利用可能かどうかを丁寧に問い合わせ ( If-Modified-Since )、サーバーは Not Modified で応答します。(たとえば、IE のデフォルトは「ページの新しいバージョンを自動的にチェックする」)

1 つの注意点: サーバーとクライアントの間に他のプロキシがある場合、これらのプロキシはキャッシュ設定に厳密に準拠することを選択し、「古い」コンテンツを提供する可能性があるため、最適なキャッシュ期間を考慮する必要があります。 .

于 2011-10-10T15:24:26.443 に答える