1. ホーム
  2. http

[解決済み] if-modified-since と if-none-match の比較

2023-02-21 20:14:12

質問

if-modified-sinceとif-none-matchの違いは何でしょうか?私は、if-none-matchがファイルに対して使用されるのに対し、if-modified-sinceはページに対して使用されるような気がするのですが?

どのように解決するのですか?

の違いについて Last-Modified/If-Modified-SinceETag/If-None-Match :

どちらも互換性を持って使用することができます。しかし、リソースの種類やサーバで生成される方法によっては、どちらかの質問("これは...から変更されましたか?" / "これはまだこのETagに一致しますか?")に答える方が簡単かもしれません。

例を挙げます。

  • ファイルを提供する場合、ファイルの mtimeLast-Modified の日付が最もシンプルな解決策です。
  • 多くの SQL クエリから構築された動的な Web ページを提供している場合、これらのクエリのいずれかによって返されたデータが変更されたかどうかをチェックすることは、(すべてのクエリが何らかの "last modified" 列を持っていない限り)非現実的かもしれません。このような場合、例えばページの内容の md5 ハッシュを ETag として使用することは、より簡単でしょう。

    しかし、これは条件付きGETであっても、サーバ上でページ全体を生成しなければならないことを意味します。何が正確にETagに入るべきか(主キー、リビジョン番号、...など)を把握することは、ここで多くの時間を節約することができます。

このトピックの詳細については、これらのリンクを参照してください。