0

前回のアクセス以降にファイルが変更された場合にのみ、新しいコンテンツを提供します。

どうすればそれを実装できますか?

アップデート

先に言い忘れて申し訳ありませんが、要求されたリソースは直接要求された Web ページであり、画像ではありません。

4

1 に答える 1

2

Rails から借用したトリックを使用して、最終ファイル変更時刻をインクルードに追加できます。

$fileName = 'image.jpg';
$httpLink = $fileName . '?' . filemtime( $fileName );
echo '<img src="', $fileName, '" alt="blah" />';

これは次のようなリンクを出力します

<img src="image.jpg?1002412" alt="blah" />   

次に、ファイルが変更されると、クエリ文字列も変更され、ブラウザーは「新しい」ファイルを要求します。

<img src="image.jpg?1003622" alt="blah" />

または、ファイル リビジョンのローカル ログを保持し、ファイル システムではなくデータベースからリビジョン番号を読み取ることもできます。これはわずかに高速になる可能性があります (ファイル システムの読み取りを保存しますが、大きな違いはありませんが、db と Web サーバーの負荷に依存します)。

于 2010-05-03T16:42:11.053 に答える