0

ログインしたユーザーに関する多くの情報に基づいて動的な画像を作成していますが、オンラインのユーザーが非常に多いため、画像システムはWebサイトのホストから割り当てられた多くのリソースを使用しています。

画像を一時的にキャッシュするようにブラウザに指示する方法はありますか?一時的なクッキーに似ていますか?

画像には、投稿数やその他の頻繁に増加する数値などの数値が含まれているため、ブラウザの自動的にキャッシュされた画像は、ページが読み込まれるたびに画像を再ダウンロードする可能性があります。サーバーの処理を大幅に節約するために、少し不正確であってもかまいません。

4

2 に答える 2

1

[編集]ブラウザはすでにコンテンツをキャッシュします(特にそうしないように指示されていない限り)。最後に変更されたものの変更を検出すると、ブラウザはそれをリロードします。

生成されている画像は、a)特定のphp script()によってブラウザに返されるか、b)一時的に保存されているが更新されているため、ブラウザは更新されたバージョンを取得していると推測しています。[/編集]

動的に生成されたコンテンツに基づいて画像を出力する場合は、これを一時的にディレクトリに書き込んでから、事前定義された期間に基づいて、有効な場合は画像をプルできます。

if(file_exists($file) && filemtime($file) <= time()-60*20) {
    // Regenerate image
} else {
    // Load image from cache
}

上記の例では、20分間画像が再生成されません。

于 2013-01-24T11:04:24.037 に答える
0

ここを見てみて くださいhttp://www.webscalingblog.com/performance/caching-http-headers-cache-control-max-age.html

また、PHPでcache-controlヘッダーを設定し、スクリプトを使用して画像を表示することもできます。

于 2013-01-24T10:50:18.407 に答える