1

私たちは CSS と JS に SquishIt を使用しており、キャッシュの無効化に非常に適しています。CSS や JS を変更するたびに、新しい URL が生成され、ブラウザは更新されたファイルを強制的にロードします。

ただし、背景画像などのアセットには、CSS に URL があります。画像を変更すると、SquishIt の前に CSS と JS で発生していたキャッシュの無効化と同じ問題が発生します。

デフォルトでは、IIS はヘッダーを提供してすべての画像を 30 日間キャッシュするように設定されているため、画像が更新されても、ブラウザはキャッシュから画像を取得するだけなので、画像を要求することさえありません。

SquishIt で CSS 内の画像 URL にフィンガープリントを挿入する方法はありますか? それができれば、Url 書き換えを使用してフィンガープリントを再度取り除き、最新の画像を提供できます。

これを自動的に行い、画像を変更するときに CSS 内の画像への参照を更新することを忘れないようにしなければならない状況を回避したいと考えています。

4

1 に答える 1

1

これはすでに整っているはずです。ただし、動作にオプトインするようにバンドルを設定する場合は、バンドルで .AppendHashForAssets() を呼び出す必要があります (状況によってはハッシュの計算にコストがかかる可能性があるため、これはオプションの動作です)。

https://github.com/jetheredge/SquishIt/blob/master/SquishIt.Framework/CSS/CSSBundle.cs#L148-156を参照してください。

于 2014-01-08T14:32:26.097 に答える